Объединение файлов в Python: примеры кода и методы

Чтобы объединить файлы в Python, вы можете использовать несколько методов в зависимости от конкретных требований и форматов файлов. Вот некоторые распространенные методы и примеры кода:

Метод 1: использование функций open()и write().
Этот метод считывает содержимое нескольких файлов и записывает его в один выходной файл.

def join_files(file_list, output_file):
    with open(output_file, 'w') as outfile:
        for file_name in file_list:
            with open(file_name, 'r') as infile:
                outfile.write(infile.read())
# Example usage
file_list = ['file1.txt', 'file2.txt', 'file3.txt']
output_file = 'output.txt'
join_files(file_list, output_file)

Метод 2: использование модуля shutil
Модуль shutilпредоставляет удобный способ копирования содержимого одного файла в другой.

import shutil
def join_files(file_list, output_file):
    with open(output_file, 'wb') as outfile:
        for file_name in file_list:
            with open(file_name, 'rb') as infile:
                shutil.copyfileobj(infile, outfile)
# Example usage
file_list = ['file1.txt', 'file2.txt', 'file3.txt']
output_file = 'output.txt'
join_files(file_list, output_file)

Метод 3: использование команды cat(системы на базе Unix)
Если вы работаете в системе на базе Unix (например, Linux или macOS), вы можете использовать команду catчерез модуль subprocessдля объединения файлов.

import subprocess
def join_files(file_list, output_file):
    subprocess.run(['cat'] + file_list, stdout=open(output_file, 'w'))
# Example usage
file_list = ['file1.txt', 'file2.txt', 'file3.txt']
output_file = 'output.txt'
join_files(file_list, output_file)