gpt4 book ai didi

python - 如何逐行写入一个csv文件?

转载 作者:行者123 更新时间:2023-11-28 20:57:25 25 4
gpt4 key购买 nike

我正在尝试从网站上抓取数据,并且从该网站收集了 3 种不同类型的信息。我在 3 列表中有数千条记录,但为了简单起见,我添加了一些记录。

List1 = ['DealerName']
List2 = ['Person1','Person2']
List3 = ['crisp nori, hot rice, and cold fish','takeout,fancy presentation, piled']

我必须逐行编写一个包含 3 列(List1、List2、List3)和 3 列的列表信息的输出 csv 文件。 “DealerName”对于所有记录都是不变的。我遇到了麻烦,因为 List3 中有逗号分隔各个列(不同单元格)中的信息。所需的输出文件应如下所示

List item

感谢您的评论。根据其中一条评论,我对代码进行了一些修改并尝试使用以下代码,但它没有给我所需的输出。

List1 = ['DealerName']
List2 = ['Person1','Person2']
List3 = ['crisp nori, hot rice, and cold fish','takeout,fancy presentation, piled']

Output_File = open("Output.csv", "w")
Output_File.write("List1,List2,List3")

import csv, itertools
rows = itertools.zip_longest([List1, List2, List3])
c = csv.writer(Output_File)
c.writerows(rows)

Output_File.close()

最佳答案

在这种特殊情况下(换句话说,不是最一般意义上的),在调用 itertools 时将 List1 的第一个元素指定为 fillvalue 参数.zip_longest() 看起来可以正常工作:

import csv, itertools

List1 = ['DealerName']
List2 = ['Person1','Person2']
List3 = ['crisp nori, hot rice, and cold fish', 'takeout,fancy presentation, piled']

with open("Output.csv", "w", newline="") as Output_File:
Output_File.write("List1,List2,List3\n")
writer = csv.writer(Output_File)
rows = itertools.zip_longest(List1, List2, List3, fillvalue=List1[0])
writer.writerows(rows)

之后 output.csv 文件的内容:

List1,List2,List3
DealerName,Person1,"crisp nori, hot rice, and cold fish"
DealerName,Person2,"takeout,fancy presentation, piled"

关于python - 如何逐行写入一个csv文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53094000/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com