簡體   English   中英

有沒有辦法在字典開頭添加新值

[英]is there a way to add new value at beginning of dictionary

我有這本python字典

my_dic = {
     0:{"food":"banana"},
     1:{"food":"apple"},
     2:{"food":"orange"}
}

我希望當我從未向my_dic添加新值時,我希望它位於my_dic 的開頭,鍵為 0,因此my_dic看起來像那樣

my_dic = {
     0:{new value},
     1:{"food":"banana"},
     2:{"food":"apple"},
     3:{"food":"orange"}
}

這是你可以做到的

my_dic = {
     0:{"food":"banana"},
     1:{"food":"apple"},
     2:{"food":"orange"}
   }

my_dic = {0: "New value", **{k+1: v for k, v in my_dic.items()}}

這基本上創建了一個新的 dict 並將舊的放在最后。

這返回

{0: 'New value', 1: {'food': 'banana'}, 2: {'food': 'apple'}, 3: {'food': 'orange'}}

由於這不是高性能的,您應該檢查是否可以使用其他數據結構。 許多評論者建議使用collections.deque() ,這也是我自己選擇的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM