MST
星途 面试题库

面试题:Python字典列表复杂数据筛选与处理

假设有一个列表,其中的每个元素都是字典,每个字典包含'city'(城市)和'population'(人口数量)两个键值对。要求编写Python代码,从这个列表中筛选出人口数量大于1000000的城市,并将这些城市按人口数量从高到低排序,最后返回排序后的城市列表。
13.0万 热度难度
编程语言Python

知识考点

AI 面试

面试题答案

一键面试
data = [
    {'city': 'CityA', 'population': 800000},
    {'city': 'CityB', 'population': 1200000},
    {'city': 'CityC', 'population': 1500000},
    {'city': 'CityD', 'population': 900000}
]

result = sorted([d['city'] for d in data if d['population'] > 1000000], key=lambda city: next(d['population'] for d in data if d['city'] == city), reverse=True)
print(result)