繁体   English   中英

如何从多个元组创建字典?

[英]How can I create a dictionary from multiple tuples?

我有一堆元组:

Stadt = ("Berlin", "Santiago", "Madrid", "Dallas", "Mexico")
Befolkerung = (3.8, 5.6, 6.6, 1.34, 8.86)
Land = ("Deutschland", "Chile", "Spanien", "Vereinigte Staaten", "Mexico")
Breitengrad = (1,2,3,4,5)
Langengrad = (2,4,6,8,10)

我想用Stadt作为键和其余的元组作为值从这些创建一个字典。 你会怎么做?

dict(zip(Stadt, zip(Befolkerung, Land, Breitengrad, Langengrad)))

使用zipdict

前任:

Stadt = ("Berlin", "Santiago", "Madrid", "Dallas", "Mexico")
Befolkerung = (3.8, 5.6, 6.6, 1.34, 8.86)
Land = ("Deutschland", "Chile", "Spanien", "Vereinigte Staaten", "Mexico")
Breitengrad = (1,2,3,4,5)
Langengrad = (2,4,6,8,10)

print(dict(zip(Stadt, zip(Befolkerung, Land, Breitengrad, Langengrad))))

输出:

{'Berlin': (3.8, 'Deutschland', 1, 2),
 'Dallas': (1.34, 'Vereinigte Staaten', 4, 8),
 'Madrid': (6.6, 'Spanien', 3, 6),
 'Mexico': (8.86, 'Mexico', 5, 10),
 'Santiago': (5.6, 'Chile', 2, 4)}

我不确定您对密钥的确切要求:

以下代码有多个键:Stadt、Befolkerung、Land、Breitengrad、Langengrad

dictionary={
    'Stadt':Stadt,
    'Befolkerung':Befolkerung,
    'Land':Land,
    'Breitengrad':Breitengrad,
    'Langengrad':Langengrad
} 
print(dictionary)

输出:

{
 'Stadt': ('Berlin', 'Santiago', 'Madrid', 'Dallas', 'Mexico'),
 'Befolkerung': (3.8, 5.6, 6.6, 1.34, 8.86),
 'Land': ('Deutschland', 'Chile', 'Spanien', 'Vereinigte Staaten', 'Mexico'),
 'Breitengrad': (1, 2, 3, 4, 5),
 'Langengrad': (2, 4, 6, 8, 10)
}
yourdict = {}
Stadt = ("Berlin", "Santiago", "Madrid", "Dallas", "Mexico")
Befolkerung = (3.8, 5.6, 6.6, 1.34, 8.86)
Land = ("Deutschland", "Chile", "Spanien", "Vereinigte Staaten", "Mexico")
Breitengrad = (1,2,3,4,5)
Langengrad = (2,4,6,8,10)
for key in list(locals().keys()):
    if(not key.startswith('__')):
        yourdict[key] = locals()[key]
print(yourdict)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM