diff --git a/solutions/69a474cdc46fd26feae69896_Практическое_задание__3__Память_и_подтве/README.md b/solutions/69a474cdc46fd26feae69896_Практическое_задание__3__Память_и_подтве/README.md index 45a859e..fa77f83 100644 --- a/solutions/69a474cdc46fd26feae69896_Практическое_задание__3__Память_и_подтве/README.md +++ b/solutions/69a474cdc46fd26feae69896_Практическое_задание__3__Память_и_подтве/README.md @@ -1,16 +1,18 @@ # Практическое задание №3: Память и подтверждение действий ## Описание -В этом проекте реализована простая консольная утилита, которая демонстрирует работу с памятью (сохраняет введённые данные в список) и подтверждением пользовательских действий. Для красивого вывода использована библиотека **rich**. +В этом проекте реализована простая консольная утилита, которая демонстрирует работу с памятью (сохраняет введённые пользователем данные) и подтверждением действий. Для улучшения визуального оформления используется библиотека **rich**. -- Пользователь вводит произвольный текст. -- Текст сохраняется в памяти программы. -- После каждого ввода программа запрашивает подтверждение продолжения (`y/n`). -- При выборе `n` выводится список всех введённых строк и приложение завершается. +Основные возможности: +- Ввод данных пользователем. +- Сохранение введённых значений в памяти программы. +- Запрос подтверждения перед выполнением критических операций. +- Красивый вывод сообщений, ошибок и таблиц с помощью `rich`. ## Установка зависимостей + ```bash -# Создайте виртуальное окружение (необязательно, но рекомендуется) +# Создайте виртуальное окружение (необязательно) python -m venv .venv source .venv/bin/activate # Windows: .venv\Scripts\activate @@ -18,49 +20,72 @@ source .venv/bin/activate # Windows: .venv\Scripts\activate pip install -r requirements.txt ``` -`requirements.txt` содержит только одну строку: +`requirements.txt` содержит: + ```text rich>=13.0.0 ``` ## Запуск проекта -В корне репозитория находится скрипт `main.py`. Для его запуска выполните: + +У вас есть два основных скрипта, которые можно запускать отдельно. + +### 1. `memory_confirm.py` +Главный скрипт, демонстрирующий работу памяти и подтверждения. ```bash -python main.py +python memory_confirm.py ``` -### Что делает скрипт -1. При запуске открывается интерактивный режим. -2. Пользователь вводит строку → она добавляется в список. -3. Появляется запрос: «Продолжить? (y/n)». -4. Если пользователь отвечает `n`, программа выводит все сохранённые строки и завершает работу. +Пример работы: -## Пример использования +``` +Введите имя: Alice +Вы ввели: Alice +Хотите сохранить это значение? (y/n): y +Значение сохранено. +Текущая память: +┌─────┬───────────┐ +│ № │ Значение │ +├─────┼───────────┤ +│ 1 │ Alice │ +└─────┴───────────┘ +``` + +### 2. `utils.py` +Модуль с вспомогательными функциями (не запускается напрямую, но используется в `memory_confirm.py`). + +## Пример использования + +```python +from utils import confirm_action, display_memory + +# Сохраняем данные +data = "Привет мир" + +# Запрашиваем подтверждение перед сохранением +if confirm_action(f"Сохранить '{data}'?"): + memory.append(data) + print("Данные сохранены.") +else: + print("Операция отменена.") + +# Показать содержимое памяти +display_memory(memory) +``` + +> **Важно**: В примере выше переменная `memory` должна быть объявлена как список в глобальной области видимости скрипта. + +## Структура проекта ```text -$ python main.py -Введите текст: Hello, world! -Вы хотите продолжить? (y/n): y -Введите текст: Как дела? -Вы хотите продолжить? (y/n): n - -Сохраненные данные: -- Hello, world! -- Как дела? - -Программа завершена. -``` - -## Структура проекта - -``` -project/ -├── main.py # Точка входа в программу -├── requirements.txt # Зависимости -└── README.md # Это руководство +. +├── memory_confirm.py # Основной исполняемый файл +├── utils.py # Модуль вспомогательных функций +├── requirements.txt # Список зависимостей +└── README.md # Это руководство ``` --- -Если возникнут вопросы или понадобится расширить функциональность, смело открывайте issue! \ No newline at end of file +Если возникнут вопросы, обращайтесь в раздел Issues проекта. Happy coding! \ No newline at end of file