Python基础 - 字典
目录
1、字典的格式
字典的每个键值key=>value对用冒号 : 分割,每个对之间用逗号,分割,整个字典包括在花括号{}中
d = {key1 : value1, key2 : value2 }
2、创建字典
dict()工厂函数被用来创建字典。如果不提供参数,会生成空字典。
d = dict(x=1,y=2) 输出:{'x': 1, 'y': 2}
d = dict([['x', 1], ['y', 2]]) 输出:{'x': 1, 'y': 2}
d = dict(zip(('x', 'y'), (1, 2))) 输出:{'x': 1, 'y': 2}
3、遍历访问字典中的值
d = dict(x=1,y=2,z=3)
for k in d:
print("key=%s,value=%s" %(k,d[k]))
输出:
key=x,value=1
key=y,value=2
key=z,value=3
4、检查字典中是否有某个键
d = dict(x=1,y=2,z=3)
result = "x" in d
print(result)
输出:True
5、更新字典数据
d = dict(x=1,y=2,z=3)
d["x"] = 4 #更新x的值为4
d["a"] = 6 #添加新数据a
print(d)
输出:{'x': 4, 'y': 2, 'z': 3, 'a': 6}
6、删除字典元素
使用del方法删除元素,使用clear方法清空字典内容
d1 = dict(x=1,y=2)
d2 = dict(a=1,b=2,c=3)
del d1["x"] #使用del函数删除元素
d2.clear() #使用clear方法清空字典
print(d1)
print(d2)
输出
{'y': 2}
{}
7、字典的比较算法
注意:python 3.4.3 的版本中已经没有cmp函数,被operator模块代替
(1) 先比较字典的元素的个数
如果字典的长度不同,用 cmp(dict1, dict2) 比较大小时,如果字典 dict1 比 dict2 长,
cmp()返回正值,如果 dict2 比 dict1 长,则返回负值(键的个数越多则越大)
(2) 比较字典的键
如果两个字典的长度相同,那就按字典的键比较
键是按照keys返回值来进行的比较
(3)比较字典的值
如果两个字典的长度相同而且键也完全匹配,则用字典中每个相同键所对应的值比较
字典的值按照items返回值来进行比较
8、合并字典
借助字典的update()方法,update方法把字典d2的键值对更新到d3里
d1 = dict(x=1,y=2)
d2 = dict(a=1,b=2,c=3)
d3 = {}
d3.update(d1)
d3.update(d2)
print(d3)
输出:{'x': 1, 'y': 2, 'a': 1, 'b': 2, 'c': 3}