Это консольное приложение предназначено для управления библиотекой книг. Оно позволяет добавлять, удалять, искать и отображать книги, а также изменять их статус.
LibraryApp
│
├── library_app/
│ ├── library.py # Основной модуль с логикой библиотеки
│ ├── book.py # Модуль с классом Book
│ ├── main.py # Точка входа в приложение
│ └── library.json # Файл для хранения данных библиотеки
│
└── tests/
├── test_book.py # Тесты для класса Book
└── test_library.py # Тесты для класса Library
-
Добавление книги:
- Пользователь вводит
title
,author
иyear
. - Книга добавляется в библиотеку с уникальным
id
и статусом "в наличии".
- Пользователь вводит
-
Удаление книги:
- Пользователь вводит
id
книги, которую нужно удалить.
- Пользователь вводит
-
Поиск книги:
- Пользователь может искать книги по
title
,author
илиyear
.
- Пользователь может искать книги по
-
Отображение всех книг:
- Приложение выводит список всех книг с их
id
,title
,author
,year
иstatus
.
- Приложение выводит список всех книг с их
-
Изменение статуса книги:
- Пользователь вводит
id
книги и новый статус ("в наличии" или "выдана").
- Пользователь вводит
- Хранение данных: Данные хранятся в формате JSON в файле
library.json
. - Обработка ошибок: Приложение корректно обрабатывает ошибки, например, попытку удалить несуществующую книгу.
- Функции: Для каждой операции (добавление, удаление, поиск, отображение, изменение статуса) написаны отдельные функции.
- Сторонние библиотеки: В проекте не используются сторонние библиотеки.
Для запуска тестов используйте следующую команду:
python -m unittest discover tests
Введите название книги: Python Crash Course
Введите автора книги: Eric Matthes
Введите год издания: 2019
Книга добавлена!
Введите ID книги для удаления: 1
Книга удалена!
выберите критерий поиска:
1. Название
2. Автор
3. Год издания
4. Все
Введите номер критерия поиска: 1
Введите название книги для поиска: 1984
Найденные книги:
ID: 4
Название: 1984
Автор: Джордж Оруэлл
Год: 1949
Статус: выдана
--------------------
Все книги:
+------------+-----------------------------------+---------------------+------------+------------+
| ID | Название | Автор | Год | Статус |
+------------+-----------------------------------+---------------------+------------+------------+
| 1 | Мастер и Маргарита | Михаил Булгаков | 1967 | в наличии |
+------------+-----------------------------------+---------------------+------------+------------+
| 3 | Гарри Поттер и философский камень | Джоан Роулинг | 1997 | в наличии |
+------------+-----------------------------------+---------------------+------------+------------+
| 4 | 1984 | Джордж Оруэлл | 1949 | выдана |
+------------+-----------------------------------+---------------------+------------+------------+