Что вы можете сделать, это сначала открыть файл, а затем прочитать все строки в список content
, удалив из каждого из них \n
.Отсюда вы можете найти в этом списке ваш target
, в котором есть слово или какая-то уникальная фраза, для этого мы использовали password
.Нет, мы можем установить его на target
, разбивая его на =
, а также сохранить target_idx
.Отсюда мы просто изменяем второй индекс target
, что мы .split('=')
, а затем .join()
, что вместе.Теперь мы можем назначить нашу новую строку phrase
на target_idx
из content
, заменив старую target
.После того, как мы можем открыть нашу text.txt
резервную копию и написать новую content
, используя '\n'.join(content)
with open('text.txt') as f:
content = [line.strip() for line in f]
for i in content:
if 'password' in i:
target = i.split('=')
target_idx = content.index(i)
target[-1] = 'My_Password'
mod = '='.join(target)
content[target_idx] = mod
with open('text1.txt', 'w') as f:
f.write('\n'.join(content))
До
chrx@chrx:~/python/stackoverflow/10.3$ cat text.txt
some line
some line
some line
min.pop.password=SomeRandomNumbersWordsCharacters
some line
some line
some line
После
chrx@chrx:~/python/stackoverflow/10.3$ cat text.txt
some line
some line
some line
min.pop.password=My_Password
some line
some line
some line