字典是一种可变容器模型,且可存储任意类型对象
字典的每个键值 key:value 对用冒号 : 分割,每个键值对之间用逗号 , 分割,整个字典包括在花括号 {} 中
value可以取任何数据类型,但key必须是不可变的,如字符串,数字或元组
字典的key是唯一的,value不是唯一的,重复的添加key只会保留最后一次记录
d = {k1:v1,k2:v2}
d = {'name':'张三','age':18,'name':'李四'}
d
#{'name': '李四', 'age': 18}
一、访问字典里的值
1.1、d[keyname]
d['name']
#'李四'
1.2、d.get(k,default=None)
d.get('name','没获取到')
#李四
d.get('sex','没获取到')
#没获取到
二、修改字典里的值
如果keyname不存在,则新加入到字典中
d[keyname] = new_value
d['name'] = '王五'
d['sex'] = '男'
d
#{'name': '王五', 'age': 18, 'sex': '男'}
三、删除字典元素
3.1、删除字典元素
3.1.1、del d[keyname]
del d['sex']
d
#{'name': '王五', 'age': 18}
3.1.2、d.pop(k[,default])
返回值为k对应的v(如果k存在的话),否则返回default
d.pop('sex','默认值')
#默认值
3.1.3、 popitem()
返回并删除字典中的最后一对键和值的元组
d.popitem()
#('age',18)
3.2、清空字典元素
d.clear()
d
#{}
3.3、删除字典
del d
四、遍历字典
41.、items():返回k,v的元组
for k,v in d.items():
print(f'{k}:{v}')
#name:李四
#age:18
4.2、keys()|values():以列表返回所有的k|v
for k in d.keys():
print(f'{k}:{d[k]}')
#name:李四
#age:18
for v in d.values():
print(v)
#李四
#18
五、其他操作
5.1、计算字典元素个数
len(d)
5.2、输出字典可打印的字符串表示
str(d)
5.3、判断k是否存在
d.has_key(k)