我正在尋找使用字典處理某些數據輸出的最聰明方式。我有一個獨特的鍵,它將其他值相關聯,例如我們有1:[2,3,4,7],2:[8,9,5]。我想要做的是能追加值,使得第一個關鍵,我可以添加的號碼13,並得到如下:將值附加到Python中的字典中
1:[2, 3, 4, 7, 13], 2:[8, 9, 5]
追加似乎並沒有這樣做的最聰明的方式。我使用:
dict[master = dict[master].append(id)
,但我得到以下幾點:
AttributeError的:「詮釋」對象有沒有屬性「追加」
現在我可以簡單地拿他們鍵的舊值和簡單做到以下幾點(ID = 17):
newvalue = values, id
,但這會導致額外的括號,如
1:[[2, 3, 4, 7, 13], 17]
什麼是確保我只得到數字在一組括號,即
1:[2, 3, 4, 7, 13, 17]
我可以使用一些剝離功能最聰明的方式 - 但有一個好簡單的方法和這樣做的簡單方法。我可能在這裏忽略簡單的事情。提前致謝。
我不明白這個答案的重點。爲什麼有人要爲內置類完美處理的東西寫一個自定義類?爲什麼OP應該使用'deque',如果他想要的只是在最後追加? –
@SvenMarnach:正如所解釋的,與列表不同的是,deque提供了最後的持續時間追加。他應該把它包起來,因爲他的數據結構不是字典 - 它是一個包含對象列表的字典。通過創建一個班級,他可以做一些事情,例如確保他所依賴的不變量可以依靠。你知道,同樣的原因,我們不僅爲所有事物使用了字典,而且也有類。 – Marcin
列表支持(分期付款)恆定時間追加,所以我仍然沒有看到'deque'的點。當然,一個deque將比這個應用程序的列表慢。而且我仍然不認爲「創建一個班級來包裝它」的答案在任何方面都是有幫助的(沒有任何意圖)。 –