Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Erro na Serie

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Oi gente, tentei encontrar o que fiz de errado mas infelizmente nao encontrei! ao que tudo indica meu codigo esta igual o do prof porem esta dando erro na Serie


class Filme:
    def __init__(self, nome, ano, duraçao):
        self.__nome = nome.title()
        self.ano = ano
        self.duraçao = duraçao
        self.__like = 0

    @property
    def like(self):
        return self.__like

    def dar_like(self):
        self.__like += 1

    @property
    def nome(self):
        return self.__nome

    @nome.setter
    def nome(self, novo_nome):
        self.__nome = novo_nome.title()


class Serie:
    def __int__(self, nome, ano, temporadas):
        self.__nome = nome.title()
        self.ano = ano
        self.temporadas = temporadas
        self.__like = 0

    @property
    def like(self):
        return self.__like

    def dar_like(self):
        self.__like += 1

    @property
    def nome(self):
        return self.__nome

    @nome.setter
    def nome(self, novo_nome):
        self.__nome = novo_nome.title()


vingadores = Filme('Vingadores - guerra infinita', 2018, 160)
vingadores.dar_like()
print(f'Nome: {vingadores.nome} - Ano: {vingadores.ano} - Duraçao: {vingadores.duraçao} - Likes: {vingadores.like}')

atlanta = Serie('atlanta', 2018, 2)
atlanta.dar_like()
atlanta.dar_like()
print(f'Nome: {atlanta.nome} - Ano: {atlanta.ano} - Temporadas: {atlanta.temporadas} - Likes: {atlanta.like}')
2 respostas
solução!

Olá Daiane, tudo bem com você?

O erro de tipo (TypeError: Serie() takes no arguments) está sendo aprendendo devido ao método inicializador da classe Serie não ter sido declarado da forma correta, note que foi utilizado __int__ (sem um i) no lugar de __init__. Basta fazer a correção mudando para __init__ que o código funcionará corretamente. No código abaixo é apresentado a sugestão de correção:

class Serie:
    def __init__(self, nome, ano, temporadas):
        self.__nome = nome.title()
        self.ano = ano
        self.temporadas = temporadas
        self.__like = 0

Fico à disposição em caso de dúvidas.

Abraços e bons estudos.

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!

Muito obrigada pela ajuda!