如何处理由新行分隔的文件名?

时间:2014-04-10 13:01:15

标签: python parsing

我正在使用2个文件 1°是findjava.py,此文件输出目录中的所有java文件名,以\ n分隔 2°countfile接收1个单一文件名并计算其行

我已经在count文件中收到一个包含文件名的字符串(javafile1 \ njavafile2 \ njavafile3 \ n)

我怎么能运行一个循环来逐个删除所有这些文件名? 我需要读取该字符串,直到它找到\ n,然后使用该部分作为变量来运行我的脚本来计算行数,然后继续读取下一个文件名。

3 个答案:

答案 0 :(得分:2)

拆分\n

类似

files = "javafile1\njavafile2\njavafile3\n"

list_of_files = files.split("\n")
for file in list_of_files:
    with open(file) as fh:
        lines = fh.readlines()

答案 1 :(得分:0)

您不会留下任何示例数据,除非它因某些其他因素而变得复杂,您似乎可以拆分()数据而不会更加轻松:

files = "javafile1\njavafile2\njavafile3\n"

for name in files.split():
  print "counting lines in file " + name
  countfile(name)

答案 2 :(得分:0)

在python中,您可以使用for循环一次访问一行文件:

with open("file_list") as stream:
    for filename in stream:
        with open(filename) as f:
            for line in f:
                lines += 1
        print f, lines