Python: ValueError "is not in list" при o.readlines().index(i) из-за повторного вызова readlines()
o=open("programm.txt",'r',encoding='utf-8')
for i in o.readlines():
print(str(o.readlines().index(i)))
ValueError: 'move-heading=<90>,step=<200>,speed=<fastest>,leave_a_trace=<Flse>,object=<turtle>\n' is not in list python
И программа выдаёт ошибку, хотя она буквально берёт элемент списка o.readlines() и находит его индекс в том же списке. Что делать?
Ответы (1 шт):
Автор решения: Evgenii Evstafev
→ Ссылка
По всей видимости, тк вы вызываете o.readlines() два раза (сначала во 2-ой строке кода, а затем в 3-ей), то файл не будет "перемотан" в начало (а он не был). Попробуйте что-то вроде:
with open("programm.txt", 'r', encoding='utf-8') as o:
lines = o.readlines()
for index, line_content in enumerate(lines):
print(f"index: {str(index)}; {str(line_content)}")