错误zip参数#1必须支持迭代

时间:2017-01-14 13:00:03

标签: python python-2.7 list

当我尝试执行此代码时

g = [1, 2, 3, 4, 5, 6]
zip(*g)

我收到以下错误

  

zip参数#1必须支持迭代

我正在尝试将行转换为列向量

我甚至试过map(list, zip(*gate))但我仍然遇到同样的错误

请帮忙

1 个答案:

答案 0 :(得分:1)

使用zip(*g)语法,您正在执行列表解包。以下代码:

g = [1, 2, 3, 4, 5, 6]
zip(*g)

相当于:

zip(1, 2, 3, 4, 5, 6)

由于 g 列表包含int个值(但不是可迭代的集合),因此会出错。

注意:zip函数可以有一个变量参数列表

所以,要解决你的问题,你需要写:

zip(g)

请记住,在Python 3中, zip 会返回一个生成器。要获取列表,您需要使用list函数:

>>> list(zip([1, 2, 3, 4, 5, 6]))
[(1,), (2,), (3,), (4,), (5,), (6,)]