2013-05-02 62 views
0

我正在創建一個字典,它可能具有相同的密鑰,但每個密鑰的值都不相同。下面是例子字典:如何只從Python字典中刪除一個鍵?

y = {44:0, 55.4:1, 44:2, 5656:3} 
del y[44] 
print y 
{5656: 3, 55.399999999999999: 1} 

我希望能夠做這樣的事情:

del y[44:0] 

或者類似這種事情。

+0

什麼是你想實現什麼?你需要存儲一個密鑰的多個值嗎?字典鍵是唯一的確定鍵將覆蓋 – dm03514 2013-05-02 18:04:27

+0

謝謝。我必須找出一種方法來製作自定義鍵,而不是自動生成它們。 – dtlindsey 2013-05-02 18:04:53

+0

我試圖在空間中存儲位置作爲鍵,所以當我對列表進行排序時,我可以快速使用該值在未排序的列表中找到合適的索引 – dtlindsey 2013-05-02 18:06:24

回答

4

你從未有過的重複鍵:

>>> y = {44:0, 55.4:1, 44:2, 5656:3} 
>>> y 
{5656: 3, 55.4: 1, 44: 2} 

字典可以重複鍵被初始化,但所有,但一個將被忽略。

0

你的問題是沒有意義的。在您的y聲明中,44:2不會與44:0並行,它會覆蓋它。如果您想在字典中使用兩個值,則需要使用其他鍵。

1

只是一個idea-的而不是標量值,爲什麼不某種類型的集合?甚至一組,如果他們獨特的價值觀:

myDict = {44:set([1, 2, 3])} 

所以要添加或刪除的對象:

myDict[44].add(1) 
myDict[44].remove(1) 

添加新鍵:

if newKey not in myDict: 
    myDict[newKey] = set() # new empty set 
-1

刪除之前: -

>>>dic={"a":"A","b":"B","c":"C","d":"D","e":"E"} 

>>> del dic['a'] 

刪除後: -

>>>dic 
{'b': 'B','c': 'C','d': 'D','e': 'E'}