簡體   English   中英

按值對字典排序

[英]Order a dict of dicts by a value

我有一個顯示表格和固定裝置等的歐元代碼。對於表格,我將它們以不變的順序存儲在 json 文件中,如下所示:

    "Table": {
      "Italy": {
        "Played": 0,
        "Won": 0,
        "Draw": 0,
        "Lost": 0,
        "PF": 0,
        "PA": 0,
        "PD": 0,
        "Points": 0
      },
      "Switzerland": {
        "Played": 0,
        "Won": 0,
        "Draw": 0,
        "Lost": 0,
        "PF": 0,
        "PA": 0,
        "PD": 0,
        "Points": 0
      },
      "Turkey": {
        "Played": 0,
        "Won": 0,
        "Draw": 0,
        "Lost": 0,
        "PF": 0,
        "PA": 0,
        "PD": 0,
        "Points": 0
      },
      "Wales": {
        "Played": 0,
        "Won": 0,
        "Draw": 0,
        "Lost": 0,
        "PF": 0,
        "PA": 0,
        "PD": 0,
        "Points": 0
      }
    }

我希望能夠按他們擁有的積分數量對團隊進行排序,或者如果積分相同,則按積分差異對團隊進行排序。 我查看了Python:sorting dictionary of dictionaries和其他相關問題,但仍然無法弄清楚這是怎么可能的,請幫忙?

正如在另一個線程中所說,您無法對字典進行排序,因為它是它的工作方式,這里的解決方法是創建這樣的字典列表,但是使用它仍然很痛苦,並且您失去了字典的優勢

table = [
{"Italy": {...}},
{"Switzerland": {...}},
...
{"Wales": {...}},
]

另一種解決方法是創建 OrderedDict,但它已經在您問題的鏈接中進行了解釋

暫無
暫無

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

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