Python基础类型之字典(dict)
1、字典: { }
字典是 Python 语言中唯一的映射类型。映射类型对象里哈希值(键) 和指向的对象(值)是一对多的关系。
2、创建字典
d1 = {'name': 'earth', 'port': 80}
d2 = dict((['x', 1], ['y', 2]))
d3 = {}.fromkeys(('x', 'y'), -1)
3、删除字典
del d['name'] # 删除键为“name”的条目
d.clear() # 删除 dict2 中所有的条目
del d # 删除整个 dict2 字典
d.pop('name') # 删除并返回键为“name”的条目
4、内置函数
dict.clear () 删除字典中所有元素
dict.copy () 返回字典(浅复制)的一个副本
dict.fromkeys (seq,val=None) 创建并返回一个新字典,以 seq 中的元素做该字典的键,val 做该字典中所有键对应的初始值(如果不提供此值,则默认为 None)
dict.get(key,default=None) 对字典 dict 中的键 key,返回它对应的值 value,如果字典中不存在此键,则返回 default 的值(注意,参数 default 的默认值为 None)
dict.has_key(key) 如果键(key)在字典中存在,返回 True,否则返回 False. 在 Python2.2版本引入 in 和 not in 后,此方法几乎已废弃不用了,但仍提供一个可工作的接口 dict.items() 返回一个包含字典中(键, 值)对元组的列表
dict.keys() 返回一个包含字典中键的列表
dict.iter() 方法 iteritems(), iterkeys(), itervalues()与它们对应的非迭代方法一样,不同的是它们返回一个迭代子,而不是一个列表。
dict.pop(key[, default]) 和方法 get()相似,如果字典中 key 键存在,删除并返回 dict[key],如果 key 键不存在,且没有给出 default 的值,引发 KeyError 异常。
dict.setdefault(key,default=None) 和方法 set()相似,如果字典中不存在 key 键,由 dict[key]=default 为它赋值。
dict.update(dict2) 将字典 dict2 的键-值对添加到字典 dict
dict.values() 返回一个包含字典中所有值的列表
5、注意点
1、一个键只能对应一个值
2、键必须是可哈希对象(不可变对象都是可哈希的)