通过匹配值python删除键值对

Eng*_*rad 2 python dictionary key-value

我正在寻找"." 在字典中并尝试删除键/值对,如果我找到它

if "." in dict.values():
    #delete key, value pair from the dictionary
Run Code Online (Sandbox Code Playgroud)

我确信这很简单,但我似乎无法找到解释.谢谢你的帮助.

jab*_*edo 6

使用字典理解创建一个没有这些不需要的值的新字典.以下是如何执行此操作的示例:

>>> 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}
Run Code Online (Sandbox Code Playgroud)

使用iteritems而不是items避免创建中间列表并提高性能.