我正在尝试构建一个元组数组,其中列表中的第一个值带有一些静态值.
它应该很简单,但我出于某种原因努力做到这一点.
例如,我如何获得以下内容:
[(1,100,200),
(2,100,200),
(3,100,200),
(4,100,200),
(5,100,200)]
>>> zip([1,2,3,4,5],100,200)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: zip argument #2 must support iteration
解决方法:
您可以使用itertools.repeat
重复您尝试压缩的元素.
>>> import itertools
>>> zip([1, 2, 3, 4, 5], itertools.repeat(100), itertools.repeat(200))
[(1, 100, 200), (2, 100, 200), (3, 100, 200), (4, 100, 200), (5, 100, 200)]
您还可以指定重复元素所需的次数. (在这种情况下为5)