Python 如何从列表中打印一组3?

Python 如何从列表中打印一组3?,python,Python,我有下面的清单 l = ["a1", "MYSQL1","emp", "b1", "MYSQL2","dep"] for a, b,c in zip(l[::2], l[1::2], l[2::3]): print(a, b, c) 我第一行打得很好,但其余的都打错了 我的预期出局了 a1 MYSQL1 emp b1 MYSQL2 dep 将::2更改为::3: 输出: a1 MYSQL emp b1 MYSQL dep 这项工作: >>> N = 3 >&

我有下面的清单

l = ["a1", "MYSQL1","emp", "b1", "MYSQL2","dep"]
for a, b,c in zip(l[::2], l[1::2], l[2::3]):
    print(a, b, c)
我第一行打得很好,但其余的都打错了

我的预期出局了

a1 MYSQL1 emp
b1 MYSQL2 dep
将::2更改为::3:

输出:

a1 MYSQL emp
b1 MYSQL dep
这项工作:

>>> N = 3
>>> a = ["a1", "MYSQL1","emp", "b1", "MYSQL2","dep"]
>>> for vals in zip(*[iter(a)]*N) :
...     print vals
... 
('a1', 'MYSQL1', 'emp')
('b1', 'MYSQL2', 'dep')
>>> 

所有::2都应该是::3::2,1::2的步幅为2,但2::3的步幅为3。你是否打算为所有人迈出3步?这是否回答了你的问题;或者a=[1,2,3,4,5,6]b=zipa[::3],a[1::3],a[2::3]我不明白为什么,但当我在Python2.7命令行上尝试它时,它工作了。
>>> N = 3
>>> a = ["a1", "MYSQL1","emp", "b1", "MYSQL2","dep"]
>>> for vals in zip(*[iter(a)]*N) :
...     print vals
... 
('a1', 'MYSQL1', 'emp')
('b1', 'MYSQL2', 'dep')
>>>