Nik*_*ntz 2 python sorting dictionary
我有一个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},
...
}
Run Code Online (Sandbox Code Playgroud)
它并没有像我期望的那样出现.我试过了:
location_map_india = sorted(location_map_india.iteritems(), key=lambda x: x.name)
Run Code Online (Sandbox Code Playgroud)
以上都行不通.我该怎么办?
更新
允许以下内容并按预期运行.谢谢你的帮助.码:
location_map_india = sorted(location_map_india.iteritems(), key=lambda x: x[1]["name"])
Run Code Online (Sandbox Code Playgroud)
模板:
{% for key,value in location_map_india %}<option value="{{key}}" >{{value.name}}</option>{% endfor %}
Run Code Online (Sandbox Code Playgroud)
你很亲密 尝试:
location_map_india = sorted(location_map_india.iteritems(), key=lambda x: x[1]["name"])
Run Code Online (Sandbox Code Playgroud)
但结果将是一个列表而不是一个字典.dict是无序的.