字典是一种 Key-value 的数据类型
特性:
key-value 结构
key 必须可 hash ,且必须为不可变数据类型,必须唯一
可存放任意多个值,可修改,可以不唯一
无序
查找速度快
字典的用法:
- 创建
// 字典为大括号,key 和 value之间用冒号分开,不同 Key-value 之间用逗号分开
>>> info = {'stu001':['zeinv',23],'stu002':['jack',33]}
>>> info
{'stu001': ['zeinv', 23], 'stu002': ['jack', 33]}
- 增加
// 直接在字典后中括号内写入 key值,后面等于号写于 value 值
>>> info['stu003'] = ['abc',24]
>>> info
{'stu001': ['zeinv', 23], 'stu002': ['jack', 33], 'stu003': ['abc', 24]}
- 修改
>>> info['stu003'] = ['cde',32]
>>> info
{'stu001': ['zeinv', 23], 'stu002': ['jack', 33], 'stu003': ['cde', 32]}
- 获取
// 获取可以用 .get(key)获取value值,如果字典里没有也不会报错
>>> info['stu001']
['zeinv', 23]
>>> info.get('stu001')
['zeinv', 23]
>>> info.get('stu005')
>>> info['stu005']
Traceback (most recent call last):
File "", line 1, in
KeyError: 'stu005'
- 删除
>>> info.pop('stu001') // 删除掉的同时打印出value值
['zeinv', 23]
>>> info.popitem() // .popitem 随机删除字典内的数据
(6, 2)
>>> del info[3] // del 删除并且不显示所删除的value
>> info.cleaer() // 清空整个字典
- 其他方法
>>> info.keys() // 显示所有的 key 值
dict_keys(['stu002', 'stu003', 4])
>>> info.values() // 显示字典内所有 value 值
dict_values([['jack', 33], ['cde', 32], 2])
>>>
>>> info.items() // 将字典变成列表
dict_items([('stu002', ['jack', 33]), ('stu003', ['cde', 32]), (4, 2)])
>>> dic2 = {1:2,3:4,4:3,'stu002':['j',33]}
>>> info.update(dic2) // 将字典 dic2 整合到 info 里,如果有相同的 key 值时,dic2 中 value 将覆盖 info 里的值
>>> info
{'stu002': ['j', 33], 'stu003': ['cde', 32], 4: 3, 1: 2, 3: 4}
>>> info.setdefault(4,'jb') //
3
>>> info.setdefault(6,'jb')
'jb'
>>> info
{'stu002': ['j', 33], 'stu003': ['cde', 32], 4: 3, 1: 2, 3: 4, 6: 'jb'}