1

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

现在我有:

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()

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

4

1 回答 1

2

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

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

然后,您可以根据需要四处走动lines

于 2012-12-03T19:38:02.137 回答