Python中的zip列表我正在努力学习如何“拉链”列表。为此,我有一个程序,在特定的时刻,我做以下工作:x1, x2, x3 = stuff.calculations(withdataa)这给了我三份清单,x1, x2,和x3,比方说,20码。现在,我知道:zipall = zip(x1, x2, x3)然而,当我这样做时:print "len of zipall %s" % len(zipall)我得到20,这不是我所期望的。我以为会有三个。我认为我做了一些根本错误的事情。
3 回答

慕莱坞森
TA贡献1810条经验 获得超4个赞
zip()
In [1]: a = b = c = range(20)In [2]: zip(a, b, c)Out[2]: [(0, 0, 0), (1, 1, 1), ... (17, 17, 17), (18, 18, 18), (19, 19, 19)]
In [3]: result = zip(a, b, c)In [4]: len(result[0])Out[4]: 3

慕虎7371278
TA贡献1802条经验 获得超4个赞
在Python2.7中,这可能运行得很好:
>>> a = b = c = range(20)
>>> zip(a, b, c)
但是在Python3.4中应该是(否则,结果将类似于<zip object at 0x00000256124E7DC8>):
>>> a = b = c = range(20)
>>> list(zip(a, b, c))
添加回答
举报
0/150
提交
取消