我将Python用作第一门编程语言,正在读《 Python速成班》这本书。在一个练习中,我需要在字典中制作字典并打印每个城市的信息。
我正在使用Python 3.7.0。 下面的代码仅用于预期目的,但我正在尝试找到一种更简单的方法来执行此操作。有什么我可以改善的吗?
cities = {
'viedma': {
'provincia': 'rio negro',
'habitantes': 50000,
'pais': 'argentina',
},
'patagones': {
'provincia': 'buenos aires',
'habitantes': 20000,
'pais': 'argentina',
},
'caba': {
'provincia': 'caba',
'habitantes': 2800000,
'pais': 'argentina',
}
}
for city, info in cities.items():
print('\nCiudad: ' + city.title())
k = list(info.keys())
v = list(info.values())
count = 0
for sub_info in k:
print(str(sub_info.title()) + ': ' + str(v[count]).title())
count += 1
答案 0 :(得分:2)
外部循环优雅地迭代外部dict中的键和值。内部循环应该做同样的事情。不需要回旋代码将每个内部dict的键和值保存在k
和v
中,然后使用手动count
变量对其进行迭代。
for city, info in cities.items():
print('\nCiudad: ' + city.title())
for name, value in info.items():
print(name.title() + ': ' + str(value).title())