/
emperor
/
Open
Обзор
Документация
Войти
/
emperor
/
Open
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
patch
main (8).py
33 строки
2 KB
emperor
upload files
14 июл 2025, 10:54
14 июл 2025, 10:54
a6748f3
Код
Авторство
О чём код?
def count_lines(filename): with open(filename, 'r', encoding='utf-8') as file: return sum(1 for line in file) def merge_files(input_files, output_file): # Создаем список кортежей (количество строк, имя файла) files_with_line_counts = [] for filename in input_files: line_count = count_lines(filename) files_with_line_counts.append((line_count, filename)) # Сортируем файлы по количеству строк files_with_line_counts.sort() # Записываем содержимое в выходной файл with open(output_file, 'w', encoding='utf-8') as out_file: for line_count, filename in files_with_line_counts: # Записываем служебную информацию out_file.write(f"{filename}\n{line_count}\n") # Записываем содержимое файла with open(filename, 'r', encoding='utf-8') as in_file: out_file.write(in_file.read()) # Добавляем перенос строки между файлами, если это не последний файл if (line_count, filename) != files_with_line_counts[-1]: out_file.write('\n') # Файлы для обработки (можно изменить по необходимости) input_files = ['1.txt', '2.txt', '3.txt'] output_file = 'merged.txt' merge_files(input_files, output_file)