python code

Lightcrash

Участник
Автор темы
75
11
Подскажите пожалуйста, как реализовать замену текста.
Например у меня есть блокнот, с именами:какой то текст который должен заменяться тем, что идет в новом блокноте после :
Во втором блокноте написан какой-то текст:пароль.
И мне нужно чтобы скрипт считывал то, что идет после : в новом блокноте, и заменял в старом "какой то текст" на пароль, который идет после : в новом блокноте.
И выводил все это в отдельный блокнот уже в формате имя:пароль
 

swap commends

Участник
54
14
Подскажите пожалуйста, как реализовать замену текста.
Например у меня есть блокнот, с именами:какой то текст который должен заменяться тем, что идет в новом блокноте после :
Во втором блокноте написан какой-то текст:пароль.
И мне нужно чтобы скрипт считывал то, что идет после : в новом блокноте, и заменял в старом "какой то текст" на пароль, который идет после : в новом блокноте.
И выводил все это в отдельный блокнот уже в формате имя:пароль
Python:
def read_password_from_file(file_path):
    """Считывает пароль из файла, который идет после двоеточия."""
    with open(file_path, 'r', encoding='utf-8') as file:
        for line in file:
            if ':' in line:
                # Извлекаем текст после двоеточия и убираем пробелы
                return line.split(':', 1)[1].strip()
    return None

def replace_text_in_file(old_file_path, new_text, output_file_path):
    """Заменяет текст в старом файле на новый текст и записывает в новый файл."""
    with open(old_file_path, 'r', encoding='utf-8') as old_file:
        lines = old_file.readlines()

    with open(output_file_path, 'w', encoding='utf-8') as output_file:
        for line in lines:
            # Заменяем "какой то текст" на новый текст
            new_line = line.replace("какой то текст", new_text)
            output_file.write(new_line)

def main():
    old_file_path = 'old_notebook.txt'  # Путь к старому блокноту
    new_file_path = 'new_notebook.txt'   # Путь к новому блокноту
    output_file_path = 'output_notebook.txt'  # Путь к выходному файлу

    # Считываем пароль из нового блокнота
    new_text = read_password_from_file(new_file_path)
    if new_text is None:
        print("Пароль не найден в новом блокноте.")
        return

    # Заменяем текст в старом блокноте и записываем в новый файл
    replace_text_in_file(old_file_path, new_text, output_file_path)
    print(f"Текст заменен и записан в {output_file_path}")

if __name__ == "__main__":
    main()