当您使用writerows(zip())
时,会得到竖排文本的原因是zip()
函数返回的是一个迭代器,它将多个可迭代对象中对应位置的元素打包成元组。而writerows()
函数是将多个元组写入CSV文件的方法。
为了解决竖排文本的问题,您可以使用zip_longest()
函数来处理。zip_longest()
函数可以将多个可迭代对象中对应位置的元素打包成元组,并且可以指定填充值来对齐不等长的可迭代对象。
下面是一个示例代码:
import csv
from itertools import zip_longest
data = [
['Name', 'Age', 'Gender'],
['John', '25', 'Male'],
['Jane', '30', 'Female'],
['Tom', '35', 'Male']
]
with open('output.csv', 'w', newline='') as file:
writer = csv.writer(file)
writer.writerows(zip_longest(*data, fillvalue=''))
print("CSV file created successfully.")
在上面的示例中,我们使用zip_longest(*data, fillvalue='')
来将data
列表中的子列表进行打包,并且指定了填充值为空字符串。这样就可以确保所有的元素都对齐,得到正确的CSV文件输出。
推荐的腾讯云相关产品:腾讯云云服务器(CVM),腾讯云对象存储(COS)
请注意,以上推荐的腾讯云产品仅供参考,具体选择应根据您的实际需求和情况进行决策。
领取专属 10元无门槛券
手把手带您无忧上云