如何从另一个文件python的列表中选择打印文件的内容?

时间:2014-11-30 18:16:53

标签: python

有一个文本文件list.txt,其中包含您要访问的列中存储的文件的名称,即,从列中分配文件的变量名称并计算其数量在其中的行或只是将其带到打印内容。如何逐行打开和读取文件,其中包含我理解的其他文件的名称,以及如何为它们指定名称尚不清楚。

input_files = open ("list.txt")

for line in input_files.readlines():

    Read line by line with the names 1.txt, 2.txt

然后以某种方式必须访问它们。即命名和计算文件中的行数?

2 个答案:

答案 0 :(得分:1)

您可以完全按照打开第一个文件的方式打开这些文件。

input_files = open ("list.txt")

for line in input_files.readlines():    
    current_file = open(line.strip())
    # Do something with the file, such as reading its lines
    # Sample code dumps out filename followed by lines, followed by newline
    print line
    for x in current_file:
       print x
    print

答案 1 :(得分:0)

如果您希望文件一次全部open(),我会像dictionary这样使用:

with open("list.txt") as input_files_file:
  input_files = {file : open(file) for file in
            input_files_file.read().splitlines()}

然后,如果您知道它们(通过input_files['1.txt']),则可以按名称访问您的文件,如果您不知道它们,则提取其名称(通过input_files.keys()),或批量处理所有文件(通过for file in input_files.values(): do_stuff())。