我应该如何在Python中使用文件阅读器类?

时间:2012-12-03 18:11:39

标签: python

我想知道如何使用类来读取文件中的输入,以便我可以在其他类中使用该数据。如果我将文件中的输入读入列表,是否应该将其传递给另一个需要使用该信息的类?

现在我有:

import sys

class FileReader:
    """Reads a file"""
    def __init__(self):
        input = ''
        try:
            with open(sys.argv[1], 'r') as inFile:
                input = inFile.readline()
                print(input)
        except IndexError:
            print("Error - Please specify an input file.")
            sys.exit(2)

def main():
    x = FileReader()

if __name__ == "__main__":
    main()

我想过制作某种列表来保存文件中的字符串,但我不确定这是否应该是全局的。

1 个答案:

答案 0 :(得分:2)

如果您要尝试的只是逐行读取文件,那么类似下面的内容就可以正常工作(省略异常处理)。

>>> path = '/path/to/file.txt'
>>> with open(path, 'r') as f:
...     lines = [l for l in f]

然后,您可以根据需要传递lines