1
两个列表如何两个列表中有两列合并到一个
x = ['a','b','c','d','e']
y = ['s','t','u','v','w','x','y','z']
如何结合这两种结果,并转储这些到CSV有两列文件,我已经使用zip(x,y)
尝试,但它删除某些列表y
的最终对象。大多数解决方案都提供了x
和y
中的对象相同的情况,正如您在我的案例中所看到的那样,情况并非如此。
两个列表如何两个列表中有两列合并到一个
x = ['a','b','c','d','e']
y = ['s','t','u','v','w','x','y','z']
如何结合这两种结果,并转储这些到CSV有两列文件,我已经使用zip(x,y)
尝试,但它删除某些列表y
的最终对象。大多数解决方案都提供了x
和y
中的对象相同的情况,正如您在我的案例中所看到的那样,情况并非如此。
改为使用itertools.izip_longest()
function,并告诉它如何使用这些缺失的列;一个CSV文件一个空字符串会的工作:
for row in izip_longest(x, y, fillvalue=''):
# ...
注意的是Python 3,i
前缀从功能名称中去掉。
如果你正在写这些到CSV文件,你可以将整个对象发送到直接csv.writer.writerows()
功能:
import csv
from itertools import izip_longest
with open(filename, 'wb') as outf:
writer = csv.writer(outf)
writer.writerows(izip_longest(x, y, fillvalue=''))
Dude,'len()'支票可能会稍微贵一些,感谢你的努力。 – Zaibi
这是Python的2或3?对于没有“x”值的行,应该写入第二列的内容是什么? –
@MartijnPieters正在使用python 2,我使用zip(x,y)并将它保存在另一个文件中,并将该文件写入csv,它具有x的所有对象,但只有y的前5个对象。如果i
Zaibi
'行)'。虽然 – jDo