【发布时间】:2014-08-13 21:27:19
【问题描述】:
我正在编写一个 Python 代码,并希望更深入地了解如何解决这个问题。
我正在尝试以 .log 结尾的顺序读取多个文件。有了这个,我希望将特定的值写入 .csv 文件。
在文本文件中,有如下提取的 X/Y 值:
文本文件.log:
X/Y = 5
X/Y = 6
文本文件.log.2:
X/Y = 7
X/Y = 8
CSV 文件中的DesiredOutput:
5
6
7
8
这是我目前想出的代码:
def readfile():
import os
i = 0
for file in os.listdir("\mydir"):
if file.endswith(".log"):
return file
def main ():
import re
list = []
list = readfile()
for line in readfile():
x = re.search(r'(?<=X/Y = )\d+', line)
if x:
list.append(x.group())
else:
break
f = csv.write(open(output, "wb"))
while 1:
if (i>len(list-1)):
break
else:
f.writerow(list(i))
i += 1
if __name__ == '__main__':
main()
我很困惑如何让它读取 .log 文件,然后是 .log.2 文件。 是否可以让它自动读取 1 个目录中的所有文件而不单独输入它们?
更新:我使用的是 Windows 7 和 Python V2.7
【问题讨论】: