我有,我想根據名稱進行排序Python字典:按名稱排序python字典?
location_map_india = {
101: {'name': 'Andaman & Nicobar Islands', 'lat': 11.96, 'long': 92.69, 'radius': 294200},
108: {'name': 'Andhra Pradesh', 'lat': 17.04, 'long': 80.09, 'radius': 294200},
...
}
它不出來我希望它的方式。我試過了:
location_map_india = sorted(location_map_india.iteritems(), key=lambda x: x.name)
上面沒有工作。我該怎麼辦?
更新
下被允許和預期表現。感謝所有的幫助。 代碼:
location_map_india = sorted(location_map_india.iteritems(), key=lambda x: x[1]["name"])
模板:
{% for key,value in location_map_india %}<option value="{{key}}" >{{value.name}}</option>{% endfor %}
詞典沒有訂單,因此無法排序。你的目標是什麼? –
根據您的Python版本,您可以使用OrderedDict而不是標準字典。它在收藏夾模塊中。否則,解釋你的意圖,以獲得更好的方法建議。 –
Duplicate:http://stackoverflow.com/q/364519/346587 – Paul