Предостережение заключается в том, что кроме литерала '\n'
также имеется фактический \n
в конце каждой строки (кроме последней строки, в которой есть только литерал '\n'
):
with open('test.txt') as f:
print(f.readlines())
# ['3 2\\n\n', '#1###2#\\n\n', '****#**\\n\n', '##*###*\\n\n', '#******\\n\n', '#*#O##*\\n']
Вам нужно позвонить .strip
как с буквальным '\n'
, так и с фактическим \n
:
with open('test.txt') as f:
lines = [line.strip('\\n\n') for line in f]
print(lines)
# ['3 2', '#1###2#', '****#**', '##*###*', '#******', '#*#O##*']