我有,我想根据名称进行排序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