字典
创建:
1.字面量
>>> {"you":90,"liang":80}
{'you': 90, 'liang': 80}
2.
通过dict函数创建:
2.1 用列表来创建
>>> dict1 = dict([["you",90],["liang",80],["zhong",70] ])
>>> dict1
{'you': 90, 'liang': 80, 'zhong': 70}
2.2 元组
>>> dict2 = dict((("you",90),("liang",80),("zhong",70)))
>>> dict2
{'you': 90, 'liang': 80, 'zhong': 70}
2.3 zip
>>> dist3 = dict(zip(["you","liang","zhong"],[90,80,70]))
>>> dist3
{'you': 90, 'liang': 80, 'zhong': 70}
2.4 赋值方式
>>> dict7 = dict(a="aaa",b="ddd")
>>> dict7
{'a': 'aaa', 'b': 'ddd'}
3.通过fromkeys
>>> dict4 ={}.fromkeys(["you","liang","zhong"],'大于60')
>>> dist4
{'you': '大于60', 'liang': '大于60', 'zhong': '大于60'}
默认为空
>>> dict4 ={}.fromkeys(["you","liang","zhong"])
>>> dict4
{'you': None, 'liang': None, 'zhong': None}
4. 推导式
>>> dict7 = {n:n**2 for n in range(1,5)}
>>> dict7
{1: 1, 2: 4, 3: 9, 4: 16}
字典的操作
1.查找:
键值查找
>>> dict1
{'you': 90, 'liang': 80, 'zhong': 70}
>>> dict1.get("you")
90
>>> dict1.get("cha")
>>> dict1.get("cha","键不存在")
'键不存在'
>>> dict1.get("you","键不存在")
90
类似下标的查找
>>> dict1["you"]
90
2.常用函数
>>> dict1.items()
dict_items([('you', 90), ('liang', 80), ('zhong', 70)])
>>> dict1.keys()
dict_keys(['you', 'liang', 'zhong'])
>>> dict1.values()
dict_values([90, 80, 70])
3.遍历输出:
>>> for i in dict1.keys():
print(i)
you
liang
zhong
可以缺省
>>> for i in dict1:
print(i)
you
liang
zhong
3.成员函数
>>> "you" in dict1
True
4.增删改
>>> dict1["you"] = 100
>>> dict1
{'you': 100, 'liang': 80, 'zhong': 70, 'cha': '10'}
5.合并字典
>>> dict2 = {'a':10}
>>> dict1
{'you': 100, 'liang': 80, 'zhong': 70, 'cha': '10'}
>>> dict2
{'a': 10}
>>> dict1.update(dict2)
>>> dict1
{'you': 100, 'liang': 80, 'zhong': 70, 'cha': '10', 'a': 10}
>>> dict2
{'a': 10}
删除元素:
del()
>>> del(dict1["you"])
>>> dist1
>>> dict1
{'liang': 80, 'zhong': 70, 'cha': '10', 'a': 10}
del语句
>>> dict2
{'a': 10}
>>> del dict2
>>> dict2
Traceback (most recent call last):
File "<pyshell#71>", line 1, in <module>
dict2
NameError: name 'dict2' is not defined
pop():
>>> dict1.pop("liang")
80
>>> dict1
{'zhong': 70, 'cha': '10', 'a': 10}
popitem()
>>> dict1
{'zhong': 70, 'cha': '10', 'a': 10}
>>> dict1.popitem()
('a', 10)
>>> dict1
{'zhong': 70, 'cha': '10'}
>>> dict1
{'zhong': 70, 'cha': '10'}
>>> dict1.clear()
>>> dict1
{}
字典存在,只是将字典清空