我有一个包含20个文件名的列表['file1.txt', 'file2.txt', ...]
.我想编写一个Python脚本来将这些文件连接成一个新文件.我可以打开每个文件f = open(...)
,通过调用逐行读取f.readline()
,并将每行写入该新文件.它对我来说似乎不是很"优雅",尤其是我必须阅读的部分//逐行写.
在Python中有更"优雅"的方法吗?
我有多达8个单独的Python进程在共享文件夹中创建临时文件.然后我想控制进程将所有临时文件按特定顺序附加到一个大文件中.在os不可知的shell级别上执行此操作的最快方法是什么?
我有2个csv文件:
output.csv有5列标题.
output1.csv有大约40列不同类型的数据.
我需要将output1.csv的所有内容追加到output.csv.我怎样才能做到这一点?
有人可以给我一个关于如何去做的提示吗?
我有以下代码:
reader=csv.DictReader(open("test.csv","r"))
allrows = list(reader)
keepcols = [c for c in allrows[0] if all(r[c] != '0' for r in allrows)]
print keepcols
writer=csv.DictWriter(open("output.csv","w"),fieldnames='keepcols',extrasaction='ignore')
writer.writerows(allrows)
with open("test1.csv","r") as f:
fields=next(f).split()
# print(fields)
allrows=[]
for line in f:
line=line.split()
row=dict(zip(fields,line))
allrows.append(row)
# print(row)
keepcols = [c for c in fields if any(row[c] != '0' for row in allrows)]
print keepcols
writer=csv.DictWriter(open("output1.csv","w"),fieldnames=keepcols,extrasaction='ignore')
writer.writerows(allrows)
Run Code Online (Sandbox Code Playgroud)
test.csv生成output.csv
test1.csv生成output1.csv
即时通讯试图看看我是否可以让两个文件在同一个文件中生成我的输出..