字典是另一种可变容器模型,且可存储任意类型对象。
字典的每个键值 key=>value 对用冒号 : 分割,每个键值对之间用逗号 , 分割,整个字典包括在花括号 {} 中
字典(dictionary)所使用的底层原理是map
键值对(key----value)举例:“name”:“张三”
d=dict()
d={"name":"zhangsan","age":18}
d[key] #获取value的值
d[key]=value #修改value的值
dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'} dict['Age'] = 8 # 更新 dict['School'] = "RUNOOB" # 添加
名称 | 作用 |
---|---|
clear | 清除 |
copy | 浅拷贝 |
get | 通过键获取value值,若获取不存在的键,则返回null |
keys | 获取所有的键 |
items | 获取所有的键值对 |
values | 获取所有的值 |
setdefault | 设置默认值,如果有则不改 |
pop | 通过key的值删除键值对 |
popitem | 删除键值对,并返回删除的键值对,遵循规则后进先出 |
update | 更新 有则改,无则添加 |
部分演示
clear-------------清除
>>> s={"key1":"wang","key2":"wei","key3":"uuid"} >>> s {'key1': 'wang', 'key2': 'wei', 'key3': 'uuid'} >>> s.clear() >>> s {}
copy-------------浅拷贝
>>> s={"key1":"wang","key2":"wei","key3":"uuid"} >>> t=s.copy() >>> t {'key1': 'wang', 'key2': 'wei', 'key3': 'uuid'} >>>
get---------------通过键获取value值,若获取不存在的键,则返回null
>>> s.get("key1") 'wang'
keys-------------获取所有的键
>>> l=s.keys() >>> l dict_keys(['key1', 'key2', 'key3']) >>> type(l) <class 'dict_keys'>
items------------获取所有的键值对
>>> l=s.items() >>> l dict_items([('key1', 'wang'), ('key2', 'wei'), ('key3', 'uuid')]) >>> type(l) <class 'dict_items'>
values-----------获取所有的值
>>> l=s.values() >>> l dict_values(['wang', 'wei', 'uuid']) >>> type(l) <class 'dict_values'>
setdefault-------设置默认值,如果有则不改
>>> s {'key2': 'mm', 'key3': 'uuid', '011': None, 'key4': 'jjjj', 'kk': 'ppp'} >>> s.setdefault("key3","none") 'uuid' >>> s {'key2': 'mm', 'key3': 'uuid', '011': None, 'key4': 'jjjj', 'kk': 'ppp'}
pop---------------通过key的值删除键值对
>>> s {'key2': 'wei', 'key3': 'uuid', '011': None, 'ddd': ''}
popitem---------删除键值对,并返回删除的键值对,遵循规则后进先出
>>> s {'key2': 'wei', 'key3': 'uuid', '011': None, 'ddd': ''} >>> s.popitem() ('ddd', '') >>> s {'key2': 'wei', 'key3': 'uuid', '011': None}
update----------更新 有则该,无则添加
>>> s {'key2': 'wei', 'key3': 'uuid', '011': None} >>> s.update({"key2":"mm"}) >>> s {'key2': 'mm', 'key3': 'uuid', '011': None} >>> s.update({"key4":"jjjj"}) >>> s {'key2': 'mm', 'key3': 'uuid', '011': None, 'key4': 'jjjj'} >>>
多学一点:可以使用del 字典名 删除整个字典