簡體   English   中英

根據首選順序更改字典鍵的順序

[英]Changing order of dictionaries keys based on preferred order

輸入是一個字典,例如:

{'first_name':'Jane', 'occupation': 'astronaut', 'age':27, 'last_name':'Doe'}

需要將鍵重新排列為特定順序,在列表中給出,例如:

preferred_order = ['first_name', 'last_name', 'age', 'location']

字典可能沒有preferred_order列表中的所有鍵,並且可能有沒有出現在列表中的鍵。

在這種特定情況下,排序的結果應該是:

{'first_name':'Jane', 'last_name':'Doe', 'age':27, 'occupation': 'astronaut'}

location沒有添加到字典中,不在preferred_order中的鍵在最后。

建議算法:

  1. 創建一個新的,最初為空的字典;
  2. 迭代通過preferred_order :每keypreferred_order ,添加key: value到新的字典,如果它存在於舊字典,從舊字典中刪除;
  3. 對於舊字典中的每個剩余key: value對,將其添加到新字典中。

對於第 3 步,您可以使用dict.update|=

進一步閱讀:

暫無
暫無

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

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