字典的使用(上) | Python从入门到精通:进阶篇之十四
字典的使用
删除 del
# 删除,可以使用 del 来删除字典中的 key-value
del d['a']
del d['b']
# del d['z'] z不存在,报错
print[d]
执行结果:
删除 popitem()
# popitem()
# 随机删除字典中的一个键值对,一般都会删除最后一个键值对
# 删除之后,它会将删除的key-value作为返回值返回
# 返回的是一个元组,元组中有两个元素,第一个元素是删除的key,第二个是删除的value
# 当使用popitem()删除一个空字典时,会抛出异常 KeyError: 'popitem(): dictionary is empty'
d.popitem()
result = d.popitem()
#result = d.popitem()
#result = d.popitem()
#result = d.popitem()
print('result=',result)
print(d)
执行结果:
删除 pop(key[, default])
# pop(key[, default])
# 根据key删除字典中的key-value
# 会将被删除的value返回!
# 如果删除不存在的key,会抛出异常
# 如果指定了默认值,在删除不存在的key时,不会报错,而是直接返回默认值
d = {'c':3,'d':4,'e':5,'f':6}
result = d.pop('d')
result = d.pop('z','这是默认值')
print('result=',result)
print(d)
执行结果:
删除 clear()
# clear()用来清空字典
d.clear()
print('result=',result)
print(d)
执行结果:
浅复制 copy()
d = {'a':1,'b':2,'c':3}
d2 = d
d['b'] = 10
print('d = ',d)
print('d2 = ',d2)
执行结果:
这并不是复制,d,d2指向的是同一个对象。而复制则是二者之间相互独立,没有相互的关系。
# copy()
# 该方法用于对字典进行浅复制
# 复制以后的对象,和原对象是独立,修改一个不会影响另一个
d = {'a':1,'b':2,'c':3}
d2 = d.copy()
# d['a'] = 100
print('d = ',d , id(d))
print('d2 = ',d2 , id(d2))
执行结果:
注意,浅复制只会简单复制对象内部的值,如果值也是一个可变对象,这个可变对象不会被复制
d = {'a':{'name':'孙悟空','age':18},'b':2,'c':3}
d2 = d.copy()
#d2['a']['name'] = '猪八戒'
print('d = ',d , id(d))
print('d2 = ',d2 , id(d2))
执行结果:
我们一般只会运用浅复制操作。
配套视频课程,点击这里查看
获取更多资源请订阅Python学习站