字典
Python内置了字典(dict)的支持,dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度:
# 字典里面key和value可以是不同类型
dic = {'4': 4, 1: 1}
- 字典里面key和value可以是不同类型,但是需要注意的是key必须是不可变类型,如果是可变类型的话,运行会报错,例如:*
# 错误示例
dic = {[1, 2, 3]: 3, 's': 'imwcl'}
字典的读取
通常情况下,可以通过下标取:
dic = {'4': 4, 1: 1}
dic[1]
- 需要注意的是通过下标取的时候,如果不存在当前key的话,运行会报错,例如:*
# 错误示例
dic = {'4': 4, 1: 1}
dic[2]
要避免key不存在的错误,有两种办法,一是通过in
判断key是否存在:
dic = {'4': 4, 1: 1}
contains = 2 in dic
# False
二是通过dict提供的get()
方法,如果key不存在,可以返回None
,或者自己指定的value:
dic = {'4': 4, 1: 1}
# 取key为2的value
value = dic1.get(2) # None
# 取dic里面key为2的value,没有的话赋值为2
value = dic1.get(2, 3) # 3
字典元素的添加
字典的插入也是通过下标来插入和修改,如下:
dic = {'4': 4, 1: 1}
# 插入一个2: 2的键值对
dic[2] = 2
# 修改key为2的value为3
dic[2] = 3
字典元素的删除
要删除一个key,用pop(key)
方法,对应的value也会从dict中删除:
dic = {'4': 4, 1: 1}
# 将dic中key为4的
dic.pop('4')
字典的遍历
遍历key值
for key in dic:
print(key+':'+dic[key])
for key in dic.keys():
print(key+':'+dic[key])
遍历value值
for value in dic.values():
print(value)
遍历字典项
for kv in dic.items():
print(kv)
遍历字典健值
for key, value in dic.items():
print(key+':'+value)
for (key, value) in dic.items():
print(key+':'+value)