我想将多个csv文件追加到使用python的单个csv文件中,同时添加文件名(或者,甚至更好,文件的子字符串名称)作为一个新变量。所有文件都有标题。下面的脚本执行合并文件的把戏,但不包括文件名可变问题:合并几个csv文件并将文件名存储为变量 - Python
import glob
filenames=glob.glob("/filepath/*.csv")
outputfile=open("out.csv","a")
for line in open(str(filenames[1])):
outputfile.write(line)
for i in range(1,len(filenames)):
f = open(str(filenames[i]))
f.next()
for line in f:
outputfile.write(line)
outputfile.close()
如果有什么好的建议我想知道。我有大约25k个小尺寸的csv文件(每个小于100KB)。
从您的代码判断,它看起来像所有文件具有相同的数量和类型的列。它是否正确?你有意跳过第一个文件吗? –
'filenames'是否包含你想要的文件名列表?你还希望完成什么? – FamousJameous
@FamousJameous我的思维阅读技巧告诉我,通过“将文件名称存储为变量”,OP意味着向包含每行起源文件名的输出文件添加一列。 –