使用Python删除或删除CSV文件中的最后一列


问题内容

我有一个5列的CSV文件。使用Python,如何删除最后一列(示例中的header5)?有没有一种简单的方法可以丢失,或者我是否必须遍历CSV中的所有行并从最后一列中删除每个值(这仍可能使我留下不希望的前一个逗号)?

我在CSV模块或互联网上的其他地方没有看到与此相关的任何内容,因此非常感谢您的帮助。

header1,header2,header3,header4,header5
value1,value2,value3,value4,value5
value1,value2,value3,value4,value5

问题答案:

使用csv模块。写出一行时,用于row[:-1]截去最后一项:

import csv

with open(filename,"r") as fin:
    with open(outname,"w") as fout:
        writer=csv.writer(fout)
        for row in csv.reader(fin):
            writer.writerow(row[:-1])