import random
import os

# Путь к папке, где будут создаваться файлы
folder_path = '/data'

# Функция для создания папки, если она не существует
def creat_folder():
    if not os.path.exists(folder_path):
        os.makedirs(folder_path)  
        print(f"Папка `{folder_path}` создана!")
    else:
        print(f"Папка `{folder_path}` уже существует!")

# Функция для удаления всех файлов в папке
def delete_files_in_folder():
    for filename in os.listdir(folder_path):
        file_path = os.path.join(folder_path, filename)
        try:
            if os.path.isfile(file_path):
                os.remove(file_path) 
                print(f"Файл `{file_path}` удален.")
        except Exception as e:
            print(f'Ошибка при удалении файла {file_path}. {e}')

# Функция для создания файлов с случайными данными
def creat_file():
    # Создаем случайное количество файлов (от 10 до 20)
    for i in range(random.randrange(10, 20)):
        file = open(f'{folder_path}/file_{i}.txt', 'w+')
        print(f"Создан файл: {folder_path}/file_{i}.txt")
        # Заполняем файл случайным количеством строк (от 10 до 50)
        for i in range(random.randrange(10, 50)):
            file.write(f'{create_lines()} \n')  # Записываем строку данных в файл
        file.close()

# Функция для создания случайных числовых строк
def create_lines():
    # Создаем список случайных чисел
    lines = [i for i in range(random.randrange(1, 50), random.randrange(50, 100), random.randrange(1, 10))]
    return lines

# Основная логика: проверка существования папки и выполнение операций
if os.path.exists(folder_path):
    print(f"Папка `{folder_path}` существует, удаляем старые файлы...")
    delete_files_in_folder()
    creat_file()
else:
    print(f"Папка `{folder_path}` не существует, создаем...")
    creat_folder()
    creat_file()

print("Скрипт на создание файлов выполнен.")
