DAS_2024_1/kashin_maxim_lab_2/program_2/main.py

54 lines
2.2 KiB
Python
Raw Permalink 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.

from pathlib import Path
import os
# Путь к папке, где будут создаваться файлы
folder_path = '/result'
# Функция для создания папки, если она не существует
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 'result.txt':
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():
file = open(f'{folder_path}/result.txt', 'w+')
print(f"Создан файл: {folder_path}/result.txt")
file.write(f'{max_nubmer_file()**2}')
print(f"Максимальное число: {max_nubmer_file()}")
print(f"Максимальное число в степени 2: {max_nubmer_file()**2}")
file.close()
# Функция для посчёта максимального числа в файле
def max_nubmer_file():
max_number = 0
for line in open(f'{folder_path}/data.txt'):
if int(line) > max_number:
max_number = int(line)
return max_number
# Основная логика: проверка существования папки и выполнение операций
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("Скрипт на задание 2.1 (Ищет набольшее число из файла /var/result/data.txt и сохраняет его вторую степень в /var/result/result.txt.) выполнен.")