将包含多个数据的列表写入Python中单独列中的csv文件

问题描述 投票:0回答:2
import csv
from itertools import izip
    if l > 0:
            for i in range(0,l):
        combined.append(str(questionList[i]).encode('utf-8') + str(viewList[i]).encode('utf-8'))
#       viewcsv.append(str(viewList[i]).encode('utf-8'))
#       quescsv.append(str(questionList[i]).encode('utf-8'))
        with open('collect.csv', 'a') as csvfile:
             spamwriter = csv.writer(csvfile, delimiter='\n')
             spamwriter.writerow(combined)
#            spamwriter.writerows(izip(quescsv, viewcsv))
        return 1
    else:
        return 0

我需要生成一个 csv 文件,并将来自 2 个或更多列表的数据填充到单独的列中,而不是单个列中。目前我正在尝试将两个列表组合在一个列表中(组合)并将其用作写作输入,但我还没有得到所需的o/p。 我尝试了很多方法,包括 fieldnames 方式、izip 方式,但都是徒劳。 例如: 问题列表视图列表 4 3 次浏览 5 0 次观看

所使用的数字仅供参考。

python-2.7 web-scraping export-to-csv
2个回答
0
投票

也许,你需要这样的东西:

import csv

X = [1, 2, 3, 4, 5]
Y = [2, 3, 5, 7, 11]
Z = ['two', 'three', 'five', 'seven', 'eleven']

with open('collect.csv', 'w') as csvfile:
    writer = csv.writer(csvfile, delimiter=',')
    for row in zip(X, Y, Z):
        writer.writerow(row)

0
投票
import csv

X = [1, 2, 3, 4, 5]
Y = [2, 3, 5, 7, 11]
Z = ['two', 'three', 'five', 'seven', 'eleven']

with open('collect.csv', 'w') as csvfile:
    writer = csv.writer(csvfile, delimiter=',')

    writer.writerow(X)
    writer.writerow(Y)
    writer.writerow(Z)
© www.soinside.com 2019 - 2024. All rights reserved.