1
如何将下列字典数组结构转换为只有一行的'city': 'continent'
结构的字典?在一行中连接字典数组
info = [
({'Amsterdam':10,'Berlin':20,'London':30},'Europe'),
({'Hongkong':10,'Beijng':20,'Manila':30},'Asia'),
({'Nairobi':10,'Cape Town':20,'Cairo':30},'Africa')
]
此代码给了我答案:
a = dict()
for t in info:
for i in t[0]:
a[i]=t[1]
{'Amsterdam': 'Europe',
'Beijng': 'Asia',
'Berlin': 'Europe',
'Cairo': 'Africa',
'Cape Town': 'Africa',
'Hongkong': 'Asia',
'London': 'Europe',
'Manila': 'Asia',
'Nairobi': 'Africa'}
这是不正确的:
a = {i:t[1] for i in t[0] for t in info}
而另一种尝试,来连接字典的数组,也将失败:
a = dict([{i:t[1] for i in t[0]} for t in info])
您使用的是什么版本的Python? –
我正在使用Python 3(请参阅标签) – API
谢谢,但Python 3指向了什么?我问的原因是,Python 3.5添加了一种连接字典的新方法('{** x,** y}')。 –