回答
你的自我回答正如你所說的那樣漫長而繁瑣。它不需要。如果(1)鍵數超過10個(2)字典的鍵數少於預期,它也會失敗。
試試這個;它的簡單得多:
>>> ordered_keys = ('z', 'y', 'e', 'x', 'w') # possible keys, in desired order
注:以上線是所有所需的設置。
>>> dic = {'z':'a', 'y':'b', 'x':'c', 'w':'d'} # actual contents of a dictionary
>>> for k in ordered_keys:
... if k in dic: # avoid trouble if a key is missing
... print k, dic[k]
...
z a
y b
x c
w d
>>>
謝謝John!是的,僅僅一天之後,我開始在我的高級代碼中看到許多缺陷。 :\ – 2011-03-26 01:57:28
XML沒有定義任何節點屬性的排序。所以行爲很好。 如果你對屬性的排序做出假設,那麼你的假設是錯誤的。 沒有排序,你不能指望任何種類的屬性排序。所以你的問題是無效的。
XML屬性被定義無序,比較官方標準的paragraph 3.1。
技術上,屬性列表是有序的,但爲了不顯著,即作家,變壓器和解析器是免費的,因爲他們喜歡四處轉了。
您無法在字典中更改內部屬性的順序。除非你做一些奇特的黑客攻擊,否則這是不可能的。
因此,解決方案是按照您希望的順序手動訪問屬性,或創建按鍵/項目列表並按照需要的方式進行排序。
「你會看到訂單已經丟失「 - 字典沒有失去的訂單。 – 2011-03-25 05:20:54
- 1. 如何訂購freeradius屬性
- 2. 如何訂購CSS屬性?
- 3. 如何訂購CSS元素?
- 4. xml元素屬性到python列表中
- 5. 如何訂購列表中的元素
- 6. XML屬性元素
- 7. HTML元素:屬性訂貨
- 8. HTML屬性訂購
- 9. 訂購DOM元素
- 10. 如何更改XML元素的屬性
- 11. 如何訪問XML元素和屬性?
- 12. 如何向XML元素添加屬性
- 13. 在何處訂購複雜聚合屬性以及訂購
- 14. 在xml元素中獲取屬性值
- 15. 如何訂購這樣的元素?
- 16. 在Java序列化中訂購xml超類元素
- 17. XML元素屬性值
- 18. 如何根據自定義屬性來訂購動態創建的元素?
- 19. 如何在Perl中訪問XML :: LibXML中的屬性和元素?
- 20. 如何在REST中的XML元素中添加屬性
- 21. 如何在python中發佈xml元素
- 22. 如何訂購線性佈局內的元素?
- 23. 驗證XML元素屬性值取決於子元素屬性
- 24. Laravel - PopularityCount屬性 - 訂購者
- 25. REXML保留屬性訂購
- 26. 表單元素訂購
- 27. JavaScript元素selectting訂購
- 28. 如何在C#Windows Phone中讀取元素xml的屬性?
- 29. 如何在actionscript 3中設置xml元素的變量屬性?
- 30. 如何在SQL中獲取XML元素和屬性值?
oops。此問題已被詢問:[鏈接](http://stackoverflow.com/questions/2741480/can-elementtree-be-told-to-preserve-the-order-of-attributes) – 2011-03-22 04:22:28