字典增加键值对,删除键值对,以及更新等的一些操作方法。
1.增加键值对;
1、向字典增加键值对:dict [ key ] = value如果字典内已经存在了同名的key,value就会被修改。例如:d1 = {'name': 'Tom', 'age': 18}print('更新前:',d1)d1['name']='Jerry'print('更新后:',d1)更新前: {'name': 'Tom', 'age': 18}更新后: {'name': 'Jerry', 'age': 18}
2、如果增加的键值不存在就新加入 key : value;d1 = {'name': 'Tom', 'age': 18}print('更新前:',d1)d1['height']=187print('更新后:',d1)更新前: {'name': 'Tom', 'age': 18}更新后: {'name': 'Tom', 'age': 18, 'height': 187}
2.字典的删除操作:
1、用del语句来删除字典的指定的键值对:del dict[key]例如:d1 = {'name': 'Tom', 'age': 18, 'height': 187}del d1['age']print(d1)>>>{'name': 'Tom', 'height': 187}
2、用del语句来删除整个字典用方法:del dictd1 = {'name': 'Tom', 'age': 18, 'height': 187}del d1
3、用dict.clear() 方法清空字典内的数据;没有返回值,原地清理。d1 = {'name': 'Tom', 'age': 18, 'height': 187}d1.clear()print(d1)
4、用pop方法删除指定的键值对:dict. pop(key[, default])1)必须给出键参数(要删除的键),否则报错。2)如果参数key在字典中,就删除该键,返回被删除的值。例如:d1={'name': '齐东强','age': 24,'height': 187,'place': '大兴安岭'}print(d1.pop('name'))>>>齐东强print(d1)>>>{'age': 24, 'height': 187, 'place': '大兴安岭'}3)如果键不在字典就 返回 default 值。print(d1.pop('name','访问的键不在此字典'))>>>访问的键不在此字典
5、popitem()方法删除键值对:蟠校盯昂dict. popitem1)无参数,按LIFO(后进先出last in first out)的顺序,删除键值对。2)将删除的键和值以元组类型返回。例如:d1 = {'name': '齐东强', 'age': 24, 'height': 187p1 = d1.popitem()print(p1,"---",d1)>>>('height', 187) --- {'name': '齐东强', 'age': 24}p2 = d1.popitem()print(p2,"-------",d1)>>>('age', 24) ------- {'name': '齐东强'}p3 = d1.popitem()print(p3,"-",d1)>>> ('name', '齐东强') - {}
3.用update更新字典:
1、update方法,没有返回值。参数可以有多种形式;用其关键字参数更改字典:dict. update([other])1)参数other是关键字参数时,关键字和值以键值对的形式加入到字典。2)如果有同名键,原字典的值将被覆盖掉。例如:d1 = {'name': '齐东强', 'age': 24, 'height': 187}d1.update(place='塔克拉玛干',age='30')print(d1)>>>{'name': '齐东强', 'age': '30', 'height': 187, 'place': '塔克拉玛干'}
2、用其他字典覆盖原字典:dict. update([other])1)参数other是个字典。2)将other的键值对,加入到dict内,如有同名键,将原值更新。3)字典other的数据不变。例剧安颌儿如:d1 = {'name': '齐东强', 'age': 24, 'height': 187}d2={'place':'塔克拉玛干','gender':'男','age':27}d1.update(d2)print(d1)print(d2)>>>{'name': '齐东强', 'age': 27, 'height': 187, 'place': '塔克拉玛干', 'gender': '男'}>>>{'place': '塔克拉玛干', 'gender': '男', 'age': 27}
3、用可迭代的对象更新字典 :dict. update([other])1)other是可迭代的对象2)可迭代对象的元素必须是两个子元素的可迭代对象(例如:[(a,1),(b,2)])。例如:d1 = {'name': '齐东强', 'age': 24, }d1.update([('height',187),('place','乌兰察布')])print(d1)>>>{'name': '齐东强', 'age': 24, 'height': 187, 'place': '乌兰察布'}
4、以上2,3项 的参数里,都可跟关键字参数:例如:在字典后跟关键字参数:d1 屏顿幂垂= {'name': '谈蚓宗蔼齐东强', 'age': 24, 'height': 187}d2={'place':'塔克拉玛干','gender':'男'}d1.update(d2,age=40)print(d1)>>>{'name': '齐东强', 'age': 40, 'height': 187, 'place': '塔克拉玛干', 'gender': '男'}例如:在可迭代对象后跟关键字参数:d3 = {'name': '齐东强', 'age': 24, }d3.update([('height',187),('place','乌兰察布')], name='光头强')print(d3)>>>{'name': '光头强', 'age': 24, 'height': 187, 'place': '乌兰察布'}
4.复制字典:
1、dict.copy()返回一个字典的副本,这只是浅复制。例如:d3 = {'name': '齐东强', 'age': 24, }d4=d3.copy()print(d4)>>>{'name': '齐东强', 'age': 24, }了解深层的复制,看下面链接有关列表的深层复制,作为参考。