【发布时间】:2012-03-11 17:50:50
【问题描述】:
是否有一种方法可以完成以下操作?
myDict = {}
if 'key' in myDic:
del myDic['key']
谢谢
【问题讨论】:
-
处理此类问题的第一件事:完整阅读
dict文档。 -
@user683111:你应该接受答案,如果它对你有用:)
标签: python dictionary del
是否有一种方法可以完成以下操作?
myDict = {}
if 'key' in myDic:
del myDic['key']
谢谢
【问题讨论】:
dict 文档。
标签: python dictionary del
你可以写
myDict.pop(key, None)
【讨论】:
你会称这是一个单一的班轮:
>>> d={1:2}
>>> if 1 in d: del d[1]
...
>>> d
{}
【讨论】:
d[k] if k in d else v 与 d.get(k, v)。
除了pop 方法之外,人们总是可以显式调用__delitem__ 方法——它的作用与del 相同,但它是作为表达式而不是作为语句来完成的。既然是表达式,可以和内联的“if”(Python版的C三元运算符)结合:
d = {1:2}
d.__delitem__(1) if 1 in d else None
【讨论】: