我创建了一个名为“city_metrics”的字典,其中包含城市,国家,人口,区域等标题。在我的字典中,有3个城市,3个人口和3个。
city_metrics =
[{'City': 'Santiago',
'Country': 'Dominican Republic',
'Population': 900000,
'Area': 4758},
{'City': 'Montreal',
'Country': 'Canada',
'Population': 345000,
'Area': 2731571},
{'City': 'Seoul',
'Country': 'South Korea',
'Population': 234540,
'Area': 3454},
{'City': 'Marakesh',
'Country': 'Morocco',
'Population': 928850,
'Area': 200}]
如何仅列出此词典中的人口?除了键入所有这些行之外还有不同的方法吗?
print city_metrics[0]['Population']
print city_metrics[1]['Population']
print city_metrics[2]['Population']
print city_metrics[3[['Population']
city_metrics = [
{'City': 'Santiago', 'Country': 'Dominican Republic', 'Population': 900000, 'Area': 4758},
{'City': 'Montreal', 'Country': 'Canada', 'Population': 345000, 'Area': 2731571},
{'City': 'Seoul', 'Country': 'South Korea', 'Population': 234540, 'Area': 3454},
{'City': 'Marakesh', 'Country': 'Morocco', 'Population': 928850, 'Area': 200}
]
for i in city_metrics:
print(i['City'],i["Population"])
这应该为你做。如果你需要打印钥匙。只需传递字典.items
你以这种方式迭代你的列表:
metrics = [
{'City': 'Santiago', 'Country': 'Dominican Republic', 'Population': 900000, 'Area': 4758},
{'City': 'Montreal', 'Country': 'Canada', 'Population': 345000, 'Area': 2731571},
{'City': 'Seoul', 'Country': 'South Korea', 'Population': 234540, 'Area': 3454},
{'City': 'Marakesh', 'Country': 'Morocco', 'Population': 928850, 'Area': 200}
]
for metric in metrics:
print(metric['City'], metric['Population'])
另一种方法是字典词典:
cities = {
'Santiago': {'Country': 'Dominican Republic', 'Population': 900000, 'Area': 4758},
'Montreal': {'Country': 'Canada', 'Population': 345000, 'Area': 2731571},
'Seoul': {'Country': 'South Korea', 'Population': 234540, 'Area': 3454},
'Marakesh': {'Country': 'Morocco', 'Population': 928850, 'Area': 200}
}
使用这种结构,你可以做这样的事情:
print(cities['Montreal']['Population'])
或者像这样迭代城市:
for city in cities:
print(city, cities[city]['Population'])
您可以通过执行以下操作来创建人口列表。
populations = [city['Population'] for city in city_metrics]
或者,您可以使用for loop
打印城市名称和人口。
for city in city_metrics:
print(city['Population'])
您可能还希望以一种有意义的方式格式化答案,例如打印城市名称和人口。
cities_and_pops = [f"The population of {city['City']} is {city['Population']}." for city in city_metrics]
cities_and_pops
>>>['The population of Santiago is 900000.',
'The population of Montreal is 345000.',
'The population of Seoul is 234540.',
'The population of Marakesh is 928850.']