gpt4 book ai didi

python-2.7 - python 字典中键、值的映射错误

转载 作者:行者123 更新时间:2023-12-04 00:55:32 25 4
gpt4 key购买 nike

对于下面的代码:

a = dict()
x = ['a','b','c']
y = [1,2,3,4,5,6]
z = ['p','q']
for zz in z:
a[zz] = dict((xx,yy) for xx,yy in zip(x,(t for t in y)))
print a

我得到:

{'q': {'a': 1, 'c': 3, 'b': 2}, 'p': {'a': 1, 'c': 3, 'b': 2}}

但是,我期待的字典是:

{'q': {'a': 4, 'c': 6, 'b': 5}, 'p': {'a': 1, 'c': 3, 'b': 2}}

我做错了什么吗?代码有逻辑错误吗?

最佳答案

每次通过你的for block 时,t for t in y(我认为这只是在y时使某些东西起作用的尝试> 单独不起作用?)重新开始,因此您总是会从 y 列表中获取第一个元素。让它每次都保持其位置的一种方法是将其变成迭代器:

y = iter([1,2,3,4,5,6])

当您这样做时,您不妨将 (t for t in y) 简单地转换回 y

关于python-2.7 - python 字典中键、值的映射错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35585182/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com