Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Dúvida] Problemas com o metodo emprestar

''' Adicione um método de instância chamado emprestar à classe Livro que define o atributo disponivel como False. Crie uma instância da classe, chame o método emprestar e imprima se o livro está disponível ou não.

'''

class Livro:

livros = []
livros_disponiveis = []

def __init__(self,titulo,autor,ano_publicacao):
    self.titulo = titulo
    self.autor = autor
    self.ano_publicacao = ano_publicacao
    self.disponivel = True
    Livro.livros.append(self)
    
def __str__(self):
    return f" Titulo: {self.livro} | Autor: {self.autor} | Ano Publicação: {self.ano_publicacao}"

def emprestar(self):
    if self.disponivel == False:
        print("O livro não está diponível")
    else:
        print("O livro está diponível")
    
@staticmethod
def verificar_disponibilidade(ano):
    for analise_livro in Livro.livros:
        if analise_livro.ano_publicacao == ano:
            Livro.livros_disponiveis.append(analise_livro)
    return Livro.livros_disponiveis


livro3 = Livro("As coisas ", "Haemin Sunim", "14586")

print(vars(livro3))

       
livro_disponivel = livro3.emprestar()

print(livro_disponivel)

porém tem dado erro e segundo a ia é pq o metodo está na mesma linha da classe e que devo criar um função mais para corrigir, mas, o enunciado não diz isto

1 resposta
solução!

Encerrar