如何将两个列表合并为一个列和两列

Zai*_*ibi 1 python csv

两个清单

x = ['a','b','c','d','e']
y = ['s','t','u','v','w','x','y','z']
Run Code Online (Sandbox Code Playgroud)

如何组合这两个结果并将这些结果转储到包含两列的CSV文件中,我尝试过使用zip(x,y)但它会删除列表的一些结束对象y.大多数解决方案都提供了对象中xy对等的情况,正如您在我的情况中所看到的那样.

Mar*_*ers 5

请改用该itertools.izip_longest()函数,并告诉它使用哪些缺少的列; 对于CSV文件,空字符串可以工作:

for row in izip_longest(x, y, fillvalue=''):
    # ...
Run Code Online (Sandbox Code Playgroud)

请注意,在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=''))
Run Code Online (Sandbox Code Playgroud)