Menu
CoddyTech

Panoramica del progetto

Fa parte della sezione Programmazione orientata agli oggetti del percorso Python di Coddy. Lezione 55 di 64.

challenge icon

Sfida

Medio

In questa sfida implementerai le basi di un sistema di gestione bibliotecaria.

Modifica library.py per implementare le classi richieste seguendo i commenti TODO. Il file driver contiene numerosi scenari di test che verificano la tua implementazione.

  • Segui i commenti TODO in library.py per ricevere indicazioni dettagliate passo dopo passo
  • Implementa la classe Library con un’inizializzazione appropriata e una rappresentazione in forma di stringa

Provalo tu

from library import Library

# Gestore completo dei casi di test
test_case = input()

if test_case == "basic_library_creation":
    library_name = "Test Library"
    library = Library(library_name)
    print(library)
    
elif test_case == "library_attributes":
    library = Library("Test Library")
    print(f"Name: {library.name}")
    print(f"Books: {len(library.books)}")
    print(f"Users: {len(library.users)}")

elif test_case == "multiple_libraries":
    library1 = Library("Library 1")
    library2 = Library("Library 2")
    print(library1)
    print(library2)

elif test_case == "empty_name":
    library = Library("")
    print(library)

elif test_case == "special_characters":
    library = Library("!@#$%^&*()")
    print(library)

elif test_case == "very_long_name":
    long_name = "A" * 100
    library = Library(long_name)
    print(library)

elif test_case == "add_books_users":
    library = Library("Test Library")
    library.books.extend(["Book1", "Book2", "Book3"])
    library.users.extend(["User1", "User2"])
    print(library)

elif test_case == "empty_lists":
    library = Library("Test Library")
    print(f"Books length: {len(library.books)}")
    print(f"Users length: {len(library.users)}")

elif test_case == "type_validation":
    library = Library(123)
    print(library)

Tutte le lezioni di Programmazione orientata agli oggetti

Esercitati da solo: Compilatore Python online