1. 添加字典元素 1.1 直接添加 a1 = { '人才' :60, '英语' : 'english' , 'adress' : 'here' } print(a1) # {'人才': 60, '英语': 'english', 'adress': 'here'} #添加方法一:根据键值对添加 a1[ '价格' ] = 100 print(a1)
1. 添加字典元素
1.1 直接添加
a1 = {'人才':60,'英语':'english','adress':'here'}print(a1) # {'人才': 60, '英语': 'english', 'adress': 'here'}
#添加方法一:根据键值对添加
a1['价格'] = 100
print(a1) # {'人才': 60, '英语': 'english', 'adress': 'here', '价格': 100}
1.1 使用update方法
book_dict = {"price": 500, "bookName": "Python设计", "weight": "250g"}# 说明:使用dict的update()方法,为其传入一个新的dict对象,key不存在则是添加元素!(如果这个新的dict对象中的key已经在当前的字典对象中存在了,则会覆盖掉key对应的value
book_dict.update({"country": "china"})
# 使用update()方法,参数为关键字参数
book_dict.update(temp = "无语中", help = "帮助")
# 使用update()方法,参数为字典解包方式
my_temp_dict = {"name": "王员外", "age":18}
book_dict.update(**my_temp_dict)
# 等同于
book_dict.update(name="王员外",age=18)
2. 字典删除元素4种方法
2.1 clear()方法(删除字典内所有元素)
dict = {'name': 'aabbcc', 'pwd': '123', 'url': 'http://baidu.com'}dict.clear(); # 清空词典所有条目
2.2 pop()方法(删除字典给定键 key 所对应的值,返回值为被删除的值)
dict = {'name': 'aabbcc', 'pwd': '123', 'url': 'http://baidu.com'}new_dict=dict.pop('name') # 删除要删除的键值对,如{'name':'aabbcc'}这个键值对
2.3 popitem()方法(随机返回并删除字典中的一对键和值)
字典popitem()方法作用是:随机返回并删除字典中的一对键和值(项)。为什么是随机删除呢?因为字典是无序的,没有所谓的“最后一项”或是其它顺序。在工作时如果遇到需要逐一删除项的工作,用popitem()方法效率很高。
>>> x{'url': 'www.iplaypy.com', 'title': 'python web site'}
>>> x.popitem()
('url', 'www.iplaypy.com')
>>> x
{'title': 'python web site'}
2.4 使用 items() 移除
字典popitem()方法作用是:随机返回并删除字典中的一对键和值(项)。为什么是随机删除呢?因为字典是无序的,没有所谓的“最后一项”或是其它顺序。在工作时如果遇到需要逐一删除项的工作,用popitem()方法效率很高。
test_dict = {"Runoob" : 1, "Google" : 2, "Taobao" : 3, "Zhihu" : 4}# 输出原始的字典
print ("字典移除前 : " + str(test_dict))
# 使用 pop 移除 Zhihu
new_dict = {key:val for key, val in test_dict.items() if key != 'Zhihu'}
# 输出移除后的字典
print ("字典移除后 : " + str(new_dict))
字典移除前 : {'Runoob': 1, 'Google': 2, 'Taobao': 3, 'Zhihu': 4}
字典移除后 : {'Runoob': 1, 'Google': 2, 'Taobao': 3}
2.5 del 全局方法(能删单一的元素也能清空字典,清空只需一项操作)
dict = {'name': 'aabbcc', 'pwd': '123', 'url': 'http://baidu.com'}del dict['name'] # 删除键是'name'的条目
del dict # 清空字典所有条目
3 字典复制copy(),返回一个字典的浅复制
dict1 = {'user':'runoob','num':[1,2,3]}dict2 = dict1 # 浅拷贝: 引用对象
dict3 = dict1.copy() # 浅拷贝:深拷贝父对象(一级目录),子对象(二级目录)不拷贝,还是引用
# 修改 data 数据
dict1['user']='root'
dict1['num'].remove(1)
# 输出结果
print(dict1)
print(dict2)
print(dict3)
{'num': [2, 3], 'user': 'root'}
{'num': [2, 3], 'user': 'root'}
{'num': [2, 3], 'user': 'runoob'}
4. python字典的遍历
# keys() 该方法会返回字典的所有的key# 该方法会返回一个序列,序列中保存有字典的所有的键
d = {'name': 'aabbcc', 'pwd': '123', 'url': 'http://baidu.com'}
print(d.keys())
# 通过遍历keys()来获取所有的键
for k in d.keys() :
print(k , d[k])# values() 该方法会返回字典的所有的key
# 该方法会返回一个序列,序列中保存有字典的所有的值
d = {'name': 'aabbcc', 'pwd': '123', 'url': 'http://baidu.com'}
for v in d.values():
print(v)# items() 该方法会返回字典中所有的项
# 该方法会返回字典中所有的项
# 它会返回一个序列,序列中包含有双值子序列
# 双值分别是,字典中的key和value
d = {'name': 'aabbcc', 'pwd': '123', 'url': 'http://baidu.com'}
print(d.items())
for k,v in d.items():
print(k, '=', v)