我正在努力理解以下两个键的字典是如何工作的。我熟悉传统的key:value字典,但不熟悉下面的字典。我需要将字典隐藏为常规字典,以使其看起来像d1 = {1:0.26, 2:0.84, 3:0.71, 4:0.03}
感谢大家的帮助
d1 = {'inds': [1, 2, 3, 4,], 'vals': [0.28, 0.84, 0.71, 0.03]}
答案 0 :(得分:1)
d2 = {k:v for k,v in zip(d1["inds"],d1["vals"])}
答案 1 :(得分:0)
尝试使用for循环:
d1 = {'inds': [1, 2, 3, 4,], 'vals': [0.28, 0.84, 0.71, 0.03]}
keys = d1['inds']
vals = d1['vals']
d2 = {}
for idx, key in enumerate(keys):
d2[key] = val[idx]
答案 2 :(得分:0)
如果您使用的是python 3,而不是旧版python,则可以执行以下操作:
{i+1: v for i, v in enumerate(d1['vals'])}
答案 3 :(得分:0)
词典理解会增加一层不必要的复杂性。您可以这样做:
d1 = {'inds': [1, 2, 3, 4,], 'vals': [0.28, 0.84, 0.71, 0.03]}
result = dict(zip(d1["inds"],d1["vals"]))
print(result)
{1: 0.28, 2: 0.84, 3: 0.71, 4: 0.03}
如果您使用的是Python 3.7,也可以这样做:
result = dict(zip(*d1.values()))