读取现有CSV&将第0、6和9列复制到新CSV

2024-04-26 06:52:28 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在运行Spyder(Python3.8),并且有一个包含10列的大型csv(您是否将它们称为excel之类的列?)。我需要将其中的3列复制到一个新的csv中。我写了以下内容,成功地复制了所有内容,但我不知道如何只复制特定的多列,如0、6和;9.

import csv
with open('new.csv' ,'w') as outFile:
    fileWriter = csv.writer(outFile)
    with open('existing.csv','r') as inFile:
        fileReader = csv.reader(inFile)
        for row in fileReader:
            fileWriter.writerow(row)

1条回答
网友
1楼 · 发布于 2024-04-26 06:52:28

row是一个值列表,与任何其他列表一样,您可以使用索引来访问这些值

https://docs.python.org/3/tutorial/introduction.html#lists

要仅将特定列写入输出文件,请将row替换为包含所需值的新列表:

for row in fileReader:
    fileWriter.writerow([row[0], row[6], row[9]])

相关问题 更多 >