Заменить всю строку в текстовом файле на основе поиска с помощью Python

Я пытаюсь заменить строку, которая будет в форме path = '/ users / username / folder' в текстовом файле. Я читаю этот текстовый файл и просматриваю строку, начинающуюся с 'path ='. Здесь у меня две проблемы,

  1. Я не могу заменить эту строку, используя следующий код
  2. Если эта строка начинается между ними, тогда этот код может не работать, поскольку я проверяю line.startswith ().

Пожалуйста помоги.

f = open('/Volumes/Personal/example.text','r+') for line in f: print(line, end='') if (line.startswith("path = ")): # You need to include a newline if you're replacing the whole line line = CurrentFilePath + "\n" f.write(line) print ("Success!!!!") 

  • Pip - Неустранимая ошибка в пусковой установке: невозможно создать процесс, используя '' '
  • Как создать сводную таблицу на чрезвычайно больших фреймах данных в Pandas
  • Как эмулировать 4-битное целое число в Python 3?
  • Использование класса в качестве типа подсказки для аргументов в его методах
  • изменение в обработке импорта / модулей от python2 до python3?
  • Не могу понять, как связать ключ ввода с функцией в tkinter
  • Невозможно использовать хром-драйвер для селена
  • сделанные пули неправильны в url django
  • One Solution collect form web for “Заменить всю строку в текстовом файле на основе поиска с помощью Python”

    Вы можете использовать регулярное выражение.

     import re with open("filename","r+") as f: text = f.read() modified_text, modified = re.subn(r'(?:^|(?<=\n))path\s\=.*',CurrentFilePath, text) if modified: print ("Success!!!!") else: print ("Failure :(") f.seek(0) f.write(modified_text) f.truncate() 
    Python - лучший язык программирования в мире.