逐行读取文本输入并添加到列表中

Read textinput line by line and add into a list

我有一个逐行读取文件并将其插入文本输入的函数:

    def load_list(self, path, filename):
    self.text_from_file.text = ''
    with open(filename[0], 'r') as file:
        line = file.readline()
        cnt = 1
        while line:
            sentence = "{}".format(line.strip())
            self.text_from_file.text += sentence + "\n"
            line = file.readline()
            cnt += 1

    self.dismiss_popup()

现在文件内容存储在text_from_file变量中,是text_from_file = ObjectProperty(None)类型(我用的是kivy)。

我想做的是阅读 textinput (text_from_file.text) 中的文本并将每一行添加到列表中,因此一行将是列表中的一项。如何逐行读取 textinput?它和从文件中一样工作吗?我不想在上面的功能中立即执行此操作。我想稍后在一个单独的函数中进行。

将文件中的所有行放入列表的简单方法如下:

with open(filename, 'r') as f:
    lines = [line for line in f]

# do something with lines

编辑:

要逐行读取变量,只需将其拆分为 '\n' 并遍历结果:

for line in self.text_from_file.text.split('\n'):
    print(line)