Menu
CoddyTech

Visão Geral do Projeto

Parte da seção Programação Orientada a Objetos do Journey de Python da Coddy. Lição 55 de 64.

challenge icon

Desafio

Médio

Neste desafio, você implementará a base de um Sistema de Gerenciamento de Bibliotecas.

Edite library.py para implementar as classes necessárias seguindo os comentários TODO. O arquivo driver contém cenários de teste abrangentes que validam sua implementação.

  • Siga os comentários TODO em library.py para obter orientações passo a passo
  • Implemente a classe Library com inicialização adequada e representação em string

Experimente você mesmo

from library import Library

# Gerenciador abrangente de casos de teste
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)

Todas as lições de Programação Orientada a Objetos

Pratique por conta própria: Compilador de Python online