我想刪除我的字典中的值爲1
的密鑰,但我知道的唯一方法是手動輸入要刪除的密鑰,效率低下。有任何想法嗎?從字典中刪除某些值?
我有一種感覺,我應該使用:
for key,value in mydict.items():
舉例來說,如果我有字典
mydict = {'a':1, 'b':2, 'c':3, 'd':1, 'e':1}
我會怎麼刪除鍵與1
的值,這樣我可以打印一個純粹由值爲> 1
的鍵的字典?
我想刪除我的字典中的值爲1
的密鑰,但我知道的唯一方法是手動輸入要刪除的密鑰,效率低下。有任何想法嗎?從字典中刪除某些值?
我有一種感覺,我應該使用:
for key,value in mydict.items():
舉例來說,如果我有字典
mydict = {'a':1, 'b':2, 'c':3, 'd':1, 'e':1}
我會怎麼刪除鍵與1
的值,這樣我可以打印一個純粹由值爲> 1
的鍵的字典?
可以使用dict comprehension過濾詞典:
>>> mydict = {'a':1, 'b':2, 'c':3, 'd':1, 'e':1}
>>> {k:v for k,v in mydict.items() if v != 1}
{'c': 3, 'b': 2}
>>>
請注意,您應該使用mydict.iteritems()
如果你對Python的2.X,以避免產生不必要的名單。
要創建一個新值大於1的項目的字典,請使用dict comprehension,如下所示。
>>> mydict = {'a':1, 'b':2, 'c':3, 'd':1, 'e':1}
>>> {key:value for key,value in mydict.items() if value > 1}
{'c': 3, 'b': 2}
你可以去儘管每個在字典中的項目(鍵值對)的檢查衝突,並在新詞典增加價值。(在這裏..結果)是不包含重複。
mydict = {'a':1, 'b':2, 'c':3, 'd':1, 'e':1}
result = {}
for key,value in mydict.items():
if value not in result.values():
result[key] = value
print result
謝謝! @iCodez – eskoka 2014-11-07 02:19:00