DAS_2024_1/kashin_maxim_lab_2/program_0/main.py

54 lines
2.4 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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("Скрипт на создание файлов выполнен.")