Автоматизация Python

Задача в том чтобы скрипт заходить в папку писал данные в файл выходил из папки и заходил в другую папку прописывая уже другие данные Допустим есть папки папка1 папка2 и папка3 в них лежат файлы с настройками в которые нужно внести новые данные из другого файла например файл test Нужно чтобы скрипт копировал данные из файла test 1 строку вставлял в текстовый файл в папке папка1 сохранял файл Далее заходил в папку папка 2 копировал данные из файла test 2 строку и вставлял в файл в папке 2 и так далее У кого есть идеи как это можно реализовать или в какую сторону копать

with open ('test.txt', 'r') as f:
  old_data = f.read()

new_data = old_data.replace('Test', 'Test12345')

with open ('test.txt', 'w') as f:
  f.write(new_data)

Этот код работает но мне нужно чтобы вместо Test12345 Вставлялись данные из файла со списком нужных данных (новые данные будут на новой строке) И еще нужно чтобы папки менялись Например в папке1 данные из первой строчки в папке2 данные из 2 строчки и так далее


Ответы (2 шт):

Автор решения: EzikBro

Если я правильно понял, то вы хотите автоматически перезаписать несколько файлов строками из конкретного файла.

Данный код перезаписывает первый файл на первую строку из settings.txt, второй файл на вторую и т.д.:

settings_link = "C:\\Temp\\settings.txt"
file_links = ["C:\\Temp\\1\\f1.txt", \
              "C:\\Temp\\2\\f2.txt", \
              "C:\\Temp\\1\\f3.txt", ]

with open(settings_link, 'r') as settings:
    for line, link in zip(settings, file_links):
        with open(link, 'w') as file:
            file.write(line)

Или если записать все пути в отдельный файл:

settings_link = "C:\\Temp\\settings.txt"
links_link = "C:\\Temp\\links.txt"

file_links = []
with open(links_link, 'r') as links:
    for link in links:
        file_links.append(link.rstrip())

with open(settings_link, 'r') as settings:
    for line, link in zip(settings, file_links):
        with open(link, 'w') as file:
            file.write(line)
→ Ссылка
Автор решения: CrazyElf

Ну, примерно так (код набросал, но не проверял):

import os

with open ('replace.txt', 'r') as r:
    for i,line in enumerate(r, 1):
        data_file = os.path.join('A'+str(i), 'test.txt')
        with open(data_file, 'r') as f:
            old_data = f.read()
        new_data = old_data.replace('Test', line.strip())
        with open(data_file, 'w') as f:
            f.write(new_data)
→ Ссылка