Читайте текстовый ввод построчно и добавляйте в список - PullRequest
0 голосов
/ 25 апреля 2020

У меня есть функция, которая читает строку файла построчно и вставляет его в текстовый ввод:

    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 построчно? Это работает так же, как из файла? Я не хочу делать это сразу в функции выше. Я хочу сделать это позже в отдельной функции.

1 Ответ

0 голосов
/ 25 апреля 2020

Простой способ получить все строки из файла в список выглядит следующим образом:

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