我想从字典中删除一个存在的键。我目前使用的代码是:
if key in my_dict:
del my_dict[key]
如果没有 if
语句,当键不存在时,代码会引发 KeyError
。我该如何更简单地处理这个问题呢?
关于从字典中删除一个元素的更一般的方法,可以参考Stack Overflow上的这个问题:https://stackoverflow.com/questions/5844672(包括一些生成修改后副本的方法)。
要删除字典中的键,无论它是否存在,请使用dict.pop()
的两参数形式:
my_dict.pop('key', None)
如果key
存在于字典中,这将返回my_dict[key]
,否则返回None
。如果未指定第二个参数(即my_dict.pop('key')
),并且key
不存在,则会引发KeyError
。
要删除保证存在的键,也可以使用
del my_dict['key']
如果键不在字典中,这将引发KeyError
。