gpt4 book ai didi

python - 如何在python中循环遍历csv文件并将csv文件的每个部分输出到新文件中?

转载 作者:行者123 更新时间:2023-12-01 05:52:18 26 4
gpt4 key购买 nike

我有一个 Excel 中的 csv 文件,其中包含 2000 行数据。我想将 100 行数据输出到不同的文本文件。但是我不知道该怎么做。我所能做的就是将文件输出到单个文件中。我已经在 Python Pyscripter 中读取了 CSV 文件数据,然后将该文件写入单个文件,如下所示:

def read_csv(self):
with open(self.data, newline='') as f:
reader = csv.reader(f)
for row in reader:
self.content.append(row)

def write_txt(self):
f = open(self.txtoutput, 'w')
for row in self.content:
f.write(', '.join(row) + '\n')
f.close()

但是,我希望将 2000 行数据中的每 100 行输出到不同的文本文件中。任何人都可以指出我正确的方向吗?注意:我使用的是Python3。提前致谢。

最佳答案

一次以 100 行为一个 block 迭代 csv 文件,并将每个 block 写入单独的文件:

with open(csv_filename, newline='') as file:
chunks = zip(*[csv.reader(file)] * 100) # assume nrows % 100 == 0
for i, rows in enumerate(chunks):
with open("out%d.csv" % (i,), 'w', newline='') as output_file:
csv.writer(output_file).writerows(rows)

参见What is the most “pythonic” way to iterate over a list in chunks?

关于python - 如何在python中循环遍历csv文件并将csv文件的每个部分输出到新文件中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13733305/

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