Практическое задание №3: Память и подтверждение действий: README.md

This commit is contained in:
2026-05-27 08:40:13 +00:00
parent 7286b6b12a
commit b3dfe6e201
@@ -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`).
## Пример использования
```text
$ python main.py
Введите текст: Hello, world!
Вы хотите продолжить? (y/n): y
Введите текст: Как дела?
Вы хотите продолжить? (y/n): n
```python
from utils import confirm_action, display_memory
Сохраненные данные:
- Hello, world!
- Как дела?
# Сохраняем данные
data = "Привет мир"
Программа завершена.
# Запрашиваем подтверждение перед сохранением
if confirm_action(f"Сохранить '{data}'?"):
memory.append(data)
print("Данные сохранены.")
else:
print("Операция отменена.")
# Показать содержимое памяти
display_memory(memory)
```
> **Важно**: В примере выше переменная `memory` должна быть объявлена как список в глобальной области видимости скрипта.
## Структура проекта
```
project/
├── main.py # Точка входа в программу
├── requirements.txt # Зависимости
── README.md # Это руководство
```text
.
├── memory_confirm.py # Основной исполняемый файл
├── utils.py # Модуль вспомогательных функций
── requirements.txt # Список зависимостей
└── README.md # Это руководство
```
---
Если возникнут вопросы или понадобится расширить функциональность, смело открывайте issue!
Если возникнут вопросы, обращайтесь в раздел Issues проекта. Happy coding!