Menu
Coddy logo textTech

Visão Geral do Projeto

Parte da seção Object Oriented Programming do Journey de Python da Coddy. Lição 55 de 64.

challenge icon

Desafio

Médio

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

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

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

Experimente você mesmo

# TODO: Importar a classe Library de library.py
# Use o formato: from library import Library

# Manipulador abrangente de casos de teste
test_case = input()

if test_case == "basic_library_creation":
    # TODO: Criar uma biblioteca com o nome "Test Library"
    # TODO: Imprimir o objeto da biblioteca (isso chamará o método __str__)
    pass
    
elif test_case == "library_attributes":
    # TODO: Criar uma biblioteca com o nome "Test Library"
    # TODO: Imprimir o atributo name da biblioteca no formato: Name: Test Library
    # TODO: Imprimir o comprimento da lista books no formato: Books: 0
    # TODO: Imprimir o comprimento da lista users no formato: Users: 0
    # Dica: Use f-strings, ex: print(f"Name: {library.name}")
    pass

elif test_case == "multiple_libraries":
    # TODO: Criar duas bibliotecas diferentes com os nomes "Library 1" e "Library 2"
    # TODO: Imprimir ambos os objetos da biblioteca
    pass

elif test_case == "empty_name":
    # TODO: Criar uma biblioteca com uma string vazia como nome
    # TODO: Imprimir o objeto da biblioteca
    pass

elif test_case == "special_characters":
    # TODO: Criar uma biblioteca com o nome "!@#$%^&*()"
    # TODO: Imprimir o objeto da biblioteca
    pass

elif test_case == "very_long_name":
    # TODO: Criar uma biblioteca com um nome de exatamente 100 caracteres 'A' (use "A" * 100)
    # TODO: Imprimir o objeto da biblioteca
    pass

elif test_case == "add_books_users":
    # TODO: Criar uma biblioteca com o nome "Test Library"
    # TODO: Adicionar estes itens à lista books: ["Book1", "Book2", "Book3"]
    # TODO: Adicionar estes itens à lista users: ["User1", "User2"]
    # TODO: Imprimir o objeto da biblioteca (deve mostrar as contagens atualizadas)
    pass

elif test_case == "empty_lists":
    # TODO: Criar uma biblioteca com o nome "Test Library"
    # TODO: Imprimir o comprimento da lista books no formato: Books length: 0
    # TODO: Imprimir o comprimento da lista users no formato: Users length: 0
    # Dica: Use f-strings, ex: print(f"Books length: {len(library.books)}")
    pass

elif test_case == "type_validation":
    # TODO: Criar uma biblioteca com o inteiro 123 como nome
    # TODO: Imprimir o objeto da biblioteca (deve converter para string)
    pass

Todas as lições de Object Oriented Programming

Pratique por conta própria: Compilador de Python online