📅  最后修改于: 2020-07-19 13:59:07             🧑  作者: Mango
pop()
为几乎所有容器(列表,集合等)指定了Python语言。这篇特别的文章着重说明pop()
Python字典提供的方法。这种方法对于经常处理字典的程序员很有用。
语法: dict.pop(key,def)
参数:
key:必须返回并删除其键值对的键。
def:如果指定的键不存在,则返回的默认值。
返回:
与已删除的键值对关联的值(如果存在键)。
如果没有密钥,则指定为默认值。
KeyError,如果不存在密钥且未指定默认值。
代码1:显示pop()
,当有key时工作:
# Python 3代码演示pop()的工作方式
# 初始化字典
test_dict = { "Nikhil" : 7, "Akshat" : 1, "Akash" : 2 }
# 打印初始字典
print ("删除前的字典 : " + str(test_dict))
# 使用pop返回并删除键值对.
pop_ele = test_dict.pop('Akash')
# 打印与弹出键关联的值
print ("与弹出键相关联的值为 : " + str(pop_ele))
# 删除后打印字典
print ("删除后的字典为 : " + str(test_dict))
输出:
删除前的字典 : {'Nikhil': 7, 'Akshat': 1, 'Akash': 2}
与弹出键相关联的值为 : 2
删除后的字典为 : {'Nikhil': 7, 'Akshat': 1}
当字典中不存在键时,pop()
功能的行为会有所不同。在这种情况下,如果没有提供默认值,它将返回提供的默认值或KeyError。
代码2:演示没有密钥的pop()的工作:
# Python 3代码来演示pop()在没有密钥的情况下的工作
# 初始化字典
test_dict = { "Nikhil" : 7, "Akshat" : 1, "Akash" : 2 }
# 打印初始字典
print ("删除前的字典 : " + str(test_dict))
# 使用pop返回并删除默认提供的键值对
pop_ele = test_dict.pop('Manjeet', 4)
# 打印与弹出键关联的值打印4
print ("与弹出键相关联的值为 : " + str(pop_ele))
# 使用pop返回并删除键值对(默认情况下未提供)
pop_ele = test_dict.pop('Manjeet')
# 打印与弹出键KeyError相关的值
print ("与弹出键相关联的值为 : " + str(pop_ele))
输出:
删除前的字典 : {'Nikhil': 7, 'Akshat': 1, 'Akash': 2}
与弹出键相关联的值为 : 4
Traceback (most recent call last):
File "main.py", line 20, in
pop_ele = test_dict.pop('Manjeet')
KeyError: 'Manjeet'