Что я хочу сделать:читать и писать один и тот же текстовый файл
- Открыть текстовый файл
- Прочитайте содержание
- сделать некоторые изменения на нем
- записать его обратно в файл
Теперь измененный текст должен содержать только измененный контент, но не исходный контент.
Можем ли мы реализовать это, установив только параметр режима с помощью функции open()
?
Если да, каков должен быть параметр?
Если нет, можем ли мы реализовать это только с помощью инструкции?
я реализую это с 2 с заявлениями в качестве следующего
replace_pattern = re.compile(r"<.+?>",re.DOTALL)
def text_process(file):
with open(file,'r') as f:
text = f.read()
with open(file,'w') as f:
f.write(replace_pattern.sub('',text))
Режим «r +» также позволяет «прямую» запись в файл, используя 'f.seek (some_position)' then 'f.write (some_bytes)' не так ли? – heltonbiker
@heltonbiker: Добавлено, почему вы хотите сначала усечь. –
Сначала вам нужно искать 0, или вы начнете запись в позицию, где закончился старый текст (с пустым началом). – poke