python中的zip(),如何使用静态值

时间:2014-03-30 11:36:05

标签: python list zip tuples

我正在尝试使用list中的第一个值构建一个元组数组,并带有一些静态值。

应该很简单,但出于某种原因我很难做到这一点。

例如,我如何获得以下内容:

 [(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

1 个答案:

答案 0 :(得分:5)

您可以使用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)