如何将列表项分组为元组?

LWZ*_*LWZ 1 python tuples list

我有一个数字列表,如何将每个n数字组合成一个元组?

例如,如果我有一个列表,a = range(10)并且我想将每5个项目组合成一个元组,那么:

b = [(0,1,2,3,4),(5,6,7,8,9)]
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?如果len(a)不是整数倍,我也想提出一个错误n.

lin*_*nbo 8

>>> a
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> [tuple(a[i:i+5]) for i in range(0, len(a), 5)]
[(0, 1, 2, 3, 4), (5, 6, 7, 8, 9)]
Run Code Online (Sandbox Code Playgroud)