string index out of range (while function)
при попытке вывести последнюю строку из списка по индексу получаю ошибку:
File "c:\path_to_file\count.py", line 9, in <module>
fd = fd[x-1]
IndexError: string index out of range
код:
with open('separated.txt', 'r') as info:
for line in info:
fd = info.readlines()
x = len(fd)
print(x + 1)
fd = fd[x-1]
print(fd)
while x !=1:
fd = fd[x-1]
print(fd)
Ответы (1 шт):
Автор решения: n1tr0xs
→ Ссылка
Вот такой подход в корне неверный
for line in info:
fd = info.readlines()
Во-первых, так вы сразу же пропускаете первую строку файла. Во-вторых, на второй итерации этого цикла (и последующих тоже) в переменной fd будет пустой список.
Вам нужно выбрать какой-то один из этих подходов.
С вашей задачей такой код должен помочь:
with open('D:\\Errors.txt', 'r') as info:
lines = info.readlines()
print(len(lines))
for line in lines:
print(line, end='')