python: ошибка с методом del
Я тестирую функцию поиска строки и работу с этой строкой в файле, мне нужно удалить эту строку после работы с ней, мой код:
import bonus
file = open('c://testper/bonus.py', 'r')
qwe = file.readlines()
print(qwe)
if '\n1' in qwe:
print('Sucs!(1)')
del '\n1'
else:
print('error')
В файле bonus.py:
2
1
3
Ошибка:
File "c://testper/test.py", line 7
del '\n1'
^
SyntaxError: cannot delete literal
Погуглил и всё равно не смог решить проблему, помогите кто сможет! Спасибо
Ответы (2 шт):
Автор решения: твоя deadline
→ Ссылка
Попробуй открыть файл в режиме "r+", мне кажется что ты пытаешься изменить файл при этом открыв его в режиме чтения, а ещё 1 2 3 в bonus.py надо запихнуть в список Код:
from bonus import i
file = open('c://testper/bonus.py', 'r')
qwe = file.readlines()
print(qwe)
if '1' in qwe:
print('Sucs!(1)')
del i[0]
else:
print('error')
bonus.py :
i = [1, 2, 3]
Я слегка не понимаю что вы хотели сделать с файлом bonus.py, поэтому вставьте вместо '1' то что вам надо
Автор решения: Аркадий
→ Ссылка
Инструкция del принимает имя переменной
https://pythonz.net/references/named/del/
Upd: Попробуйте вместо del '\n1' так:
del qwe[qwe.index('\n1')]