Неправильно работает readline, считывает всего одну строку

Код:

b = open('GG.txt')
B = b.readline()
print(B)

Файл GG.txt:

1
2
3
4

Выводит только 1 и заканчивает работу без ошибки Что делать ?


Ответы (1 шт):

Автор решения: cauf

Как правильно заметил MaxU в комментарии, ваша ошибка в том, что file.readline() и file.readlines() - это разные методы. Первый считывает последовательно по одной строке, второй - все строки в виде списка разом.

Если у вас есть файл GG.txt:

1
2
3
4

то вывод этих методов будет следующим:

b = open('GG.txt')
B = b.readline()  # <== считывание одной строки
print(B)          # вернет "1\n"

# ---------------------------------------

B = b.readlines()  # <== считывание всех строк
print(B)          # вернет ["1\n", "2\n", "3\n", "4\n"]
→ Ссылка