所以我知道排序dict列表的方法,但我无法弄清楚如何同时获取索引。假设我有这样的字典:
cities = [{'city': 'Harford', 'state': 'Connecticut'},
{'city': 'Boston', 'state': 'Massachusetts'},
{'city': 'Worcester', 'state': 'Massachusetts'},
{'city': 'Albany', 'state': 'New York'},
{'city': 'New York City', 'state': 'New York'},
{'city': 'Yonkers', 'state': 'Massachusetts'}]
我可以通过“州”使用以下方式对此词典进行排序:
new_cities = sorted(cities, key=itemgetter('state'))
得到:
cities = [{'city': 'Harford', 'state': 'Connecticut'},
{'city': 'Boston', 'state': 'Massachusetts'},
{'city': 'Worcester', 'state': 'Massachusetts'},
{'city': 'Yonkers', 'state': 'Massachusetts'},
{'city': 'Albany', 'state': 'New York'},
{'city': 'New York City', 'state': 'New York'}]
但是如何同时获得列表的索引呢?
答案 0 :(得分:1)
<version>2.3-SNAPSHOT</version>
首先枚举它将为您提供原始new_cities = sorted(enumerate(cities), key=lambda x: x[1]['state'])
列表的索引,然后可以对其进行排序。
cities