【发布时间】:2017-06-28 07:27:25
【问题描述】:
我对 python 比较陌生,正在尝试向目录中的所有 .csv 文件添加一个新列,并使用父 csv 的文件名填充它们。
迄今为止,我的代码(来自论坛的其他部分)允许我向单个文件 (listings1.csv) 添加一个新列并将其命名为“文件名”,然后使用文件中的其他变量填充它(第 0 行, 1,2 等)。
我想对此做两处修改:
- 将文件的实际名称 (listings1) 添加到 FileName 而不是来自另一列的数据
- 对目录中的所有 csv 文件(listings1、listings2、listings3...)运行此命令,只更新源文件而不是创建新文件(output1 等)
任何建议表示赞赏
import csv
with open('listings1.csv','r') as csvinput:
with open('output1.csv', 'w') as csvoutput:
writer = csv.writer(csvoutput, lineterminator='\n')
reader = csv.reader(csvinput)
all = []
row = next(reader)
row.append('FileName')
all.append(row)
for row in reader:
row.append(row[1])
all.append(row)
writer.writerows(all)
【问题讨论】: