【发布时间】:2019-03-26 05:54:35
【问题描述】:
我在每个文件夹中有多个文件夹和一个文本文件 (input.txt)。首先我从f_names.txt 中读取文件夹名称,然后进入每个文件夹并从每个文件夹中的input.txt 中读取第三列。代码在这里正常工作。问题是代码合并了输出文件 (combine.txt) 中一行中的所有第三列。而我想将第三列作为新列写入输出文件 (combine.txt)。我该怎么做?
这是我的代码:
#!/usr/bin/python
import os
import re
path=os.getcwd()
try:
os.remove("combine.txt")
except OSError:
pass
with open('combine.txt', mode='a') as outfile:
with open('f_names.txt', 'r') as read_f:
for line in read_f:
os.chdir(line.strip())
with open('input.txt', 'r') as f:
data=[]
for line in f:
row = line.split()
data.append(float(row[2]))
outfile.write("%.2f\n" % float(row[2]))
os.chdir("..")
获得的输出(两个输入文件):
2.12
3.15
4.18
8.45
2.10
0.12
0.18
0.32
0.21
0.13
所需的输出(用于两个输入文件):
2.12 0.12
3.15 0.18
4.18 0.32
8.45 0.21
2.10 0.13
【问题讨论】:
标签: python