Я пытаюсь читать построчно из входного файла в Python, как показано ниже.
in1 = open("input.txt", "r")
for i in in1:
a1 = in1.readline()
print(a1)
in1.close()
Входной файл содержит числа, как показано ниже:
13245
546464
46516
684186
По какой-то причине он печатает только каждую вторую строку с новой строкой между ними, но я не понимаю, почему.
546464
684186
Я бы ожидал, что a1 изначально сохранит «13245 \ n», затем «546464 \ n» на следующей итерации и так далее до «684186 \ n». Если я использую readlines () вместо readline (), он пропускает исходное число, сохраняя оставшиеся с «\ n» в списке.
['546464\n', '46516\n', '684186']
Почему это так? Связано ли это с символом новой строки "\ n", который читается? Я знаю, что есть другие способы чтения файлов построчно, но я хочу понять, почему это не работает так, как ожидалось, когда это происходит в других языках (C ++, Java), использующих подобную структуру. Речь идет не о поиске кода для этого, а о том, почему этот код ведет себя так, как он делает.