Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Написать код Питон

Елена Краснова Знаток (413), открыт 1 неделю назад
Просто молю помочь! Мучаюсь с заданием уже несколько дней, всегда на каких-то этапах что-то идет не так, а ИИ каждый раз делает как будто хуже.

ЗАДАНИЕ: разработать «файловую» базу данных (БД) с несколькими «таблицами». Под «таблицей» подразумевается один JSON-файл со списком JSON-ов, каждый из которых имеет одинаковую структуру. Доступ и манипуляции с БД осуществляются с помощью консольной менюшки (бесконечной до нажатия на «выход», как каждый из вас уже делал во втором проекте нашего курса), поддерживается стандартный набор операций CRUD .

К решению есть требования:

CRUD-запросы должны быть:
реализованы отдельными функциями;
универсальны для всех таблиц (реализованы не более 1 раза).
Контент таблиц должен удовлетворять минимальным требованиям по содержанию — минимум 20 записей.

Тематика: Библиотека

Файл (library.json):

[
{
"BookID": 1,
"Title": "Война и мир",
"Author": "Лев Толстой",
"Genre": "Роман",
"Year": 1869,
"BorrowedBy": ["Иван", "Николай"]
}
// Нужно добавить еще минимум 19 записей.
// Поле BookID должно быть уникальным для всех книг.
// Поле BorrowedBy может быть пустым списком.
// Поле BorrowedBy минимум у одной книги должно быть пустое.
// Поле Author должно иметь минимум 5 различных значений.
// Поле Genre должно иметь минимум 5 различных значений.
]
Помимо CRUD-операций, нужно реализовать дополнительный функционал:

поиск книг по жанру/автору;
поиск «самой популярной» книги/книг, которая находится в пользовании у наибольшего числа пользователей;
поиск книг, которые не были взяты из библиотеки.

Задание 1
Первая задача — разработаем консольное меню. Пока что вместо выполнения команд можно выводить на экран предложения вида: «Я делаю вот это».

Задание 2
Разработайте блок «бизнес-логики и оперативной памяти БД». Подумайте, как хранить сущности (какой тип данных для этого лучше использовать), как сделать их аккуратный вывод (в виде таблиц) в консоль, и реализуйте это. У вас получится своего рода прослойка между файлами и консолью. В этом задании для работы с файлами используйте заглушки .

Таблица должна быть аккуратно выведена.

Задание 3
Разработайте общий блок работы с файлами — CRUD-сущностей (реализуй код для заглушек из задания 2). Не забывайте про разбиение кода на отдельные функции, которые мы проходили в третьем проекте нашего курса.

Задание 4
Реализуйте выполнение команд-запросов, соответствующих выбранному варианту тематики. Нужно заполнить JSON-файлы таким образом, чтобы можно было продемонстрировать работоспособность каждого из дополнительных пунктов по варианту. Здесь вам пригодятся знания условий и циклов, а также знание различных типов данных в Python.

P.S. Не забудьте про формат JSON, он очень поможет для выполнения этого задания.
1 ответ
Вертолётов 625 Мудрец (13315) 1 неделю назад
Вот код(ограничение на длину текста поэтому ссылка):
Файловая структура и код 1
Елена КрасноваЗнаток (413) 1 неделю назад
Спасибо ОГРОМНОЕ!
Похожие вопросы