Розробити систему управління книжковою полицею, де користувач може додавати книги (з назвою та автором), переглядати список всіх доданих книг або завершити роботу програми. Додана книга має зберігатися у вигляді словника з полями "Назва" та "Автор". Програма має мати текстовий інтерфейс та очищати екран після кожної операції.

Детальне технічне завдання:

Створити список books, де будуть зберігатися дані про книги. Кожна книга представляється у вигляді словника з полями "Назва" та "Автор".

Визначити функцію book_shelf(), яка буде слугувати основним інтерфейсом програми.

У цій функції користувачу пропонується вибрати одну з наступних дій:

"Додати книгу"

"Переглянути список книг"

"Вийти"

Вибір реалізований за допомогою функції select.

Якщо користувач обрав "Додати книгу":

Він має ввести назву книги та ім'я автора через функцію input.

Введені дані додаються до списку books.

Виводиться повідомлення "Книгу додано!".

Якщо користувач обрав "Переглянути список книг":

Весь поточний список книг виводиться на екран у вигляді таблиці за допомогою put_table.

Якщо користувач обрав "Вийти":

Цикл завершується і програма закінчує свою роботу.

Після кожної дії інтерфейс очищається функцією clear().

Функція book_shelf() запускається тільки тоді, коли програма виконується як основний модуль (не імпортована).

кодом в пайтон

Ответы

Ответ дал: Mirox921
0

Код:

import os

# Функція для очищення екрану

def clear():

   os.system('clear' if os.name == 'posix' else 'cls')

# Функція для виведення списку книг у вигляді таблиці

def put_table(data):

   print("Список книг:")

   print("=" * 30)

   print("Назва".ljust(20) + "Автор")

   print("-" * 30)

   for book in data:

       print(book["title"].ljust(20) + book["author"])

   print("=" * 30)

# Основна функція для взаємодії з користувачем

def book_shelf():

   books = []

   while True:

       clear()

       print("1. Додати книгу")

       print("2. Переглянути список книг")

       print("3. Вийти")

       choice = input("Виберіть дію: ")

       if choice == '1':

           clear()

           title = input("Введіть назву книги: ")

           author = input("Введіть автора книги: ")

           books.append({"title": title, "author": author})

           print("Книгу додано!")

       elif choice == '2':

           clear()

           if books:

               put_table(books)

           else:

               print("Список книг порожній.")

       elif choice == '3':

           clear()

           print("Програма завершує свою роботу.")

           break

       input("\nНатисніть Enter, щоб продовжити...")

if __name__ == "__main__":

   book_shelf()

Вас заинтересует