Это «вилка» из ответа @ Lother (который, я считаю, следует считать правильным ответом).
Для такого файла:
$ cat file.txt
1: october rust
2: november rain
3: december snow
вилка из решения Лоутера отлично работает:
#!/usr/bin/python3.4
with open("file.txt","r+") as f:
new_f = f.readlines()
f.seek(0)
for line in new_f:
if "snow" not in line:
f.write(line)
f.truncate()
Усовершенствования:
with open
, которые отбрасывают использование f.close()
if/else
для оценки того, нет ли строки в текущей строке