我正在搜索句点“。” 在字典中并尝试删除键/值对(如果我找到它)
if "." in dict.values():
#delete key, value pair from the dictionary
我确信这很简单,但我似乎找不到解释。谢谢你的帮助。
我正在搜索句点“。” 在字典中并尝试删除键/值对(如果我找到它)
if "." in dict.values():
#delete key, value pair from the dictionary
我确信这很简单,但我似乎找不到解释。谢谢你的帮助。
使用字典理解创建一个没有那些不需要的值的新字典。以下是如何执行此操作的示例:
>>> old_dict = {'one': '.', 'two': 2, 'three':3, 'four':'.'}
>>> new_dict = {k:v for k,v in old_dict.iteritems() if not v == '.'}
>>> new_dict
{'three': 3, 'two': 2}
使用iteritems
而不是items
避免创建中间列表并提高性能。
如果您不想复制您的字典(例如,如果字典很大,或者您在其他地方有对它的引用),那么您应该这样做:
ks = [k for k in d if d[k]=='.']
for k in ks:
d.pop(k)
如上所示,创建要提前删除的密钥列表。您不想在迭代字典时修改它。