EP08 - limbus=Nuvens(Palete(cores))

EP08 - limbus=Nuvens(Palete(cores))

por Pedro Felipe Higa Felizatto -
Número de respostas: 7

Olá, 

Depois de ter feito e testado no Shell os programas, mais especificadamente nuvens.py, ao mandar pra correção o corretor diz o seguinte:

"Erro ao criar objeto Nuvens 'limbus = Nuvens(Palete(cores))'. ", mas ao colocar no shell ele não dá erro

É pra criar um dicionário na nuvem, não? Uma parte do comentário sobre __init__ diz:

recebe um objeto Palete que define os
k nomes de classes (cores) e cria um dicionário para armazenar as
"nuvens" a serem associadas a cada classe

Em resposta à Pedro Felipe Higa Felizatto

Re: EP08 - limbus=Nuvens(Palete(cores))

por Carlos Hitoshi Morimoto -

Pedro: "Erro ao criar objeto Nuvens 'limbus = Nuvens(Palete(cores))'. ", mas ao colocar no shell ele não dá erro

Criar uma classe (como Nuvens) que depende de outras classes (como Palete e Imagem) exige disciplina e cuidado de usar APENAS os métodos disponíveis na especificação dessas classes. Você pode estar usando algo dessas classes que não é de conhecimento público (e portanto fora da especificação) que o corretor automático não reconhece.

Em resposta à Carlos Hitoshi Morimoto

Re: EP08 - limbus=Nuvens(Palete(cores))

por Rafael Zanuto Bianchi -

Se uma classe é filha de outra, podemos usar os métodos da classe mãe do mesmo jeito que fizemos na polonesa-calculadora,certo?

Em resposta à Carlos Hitoshi Morimoto

Re: EP08 - limbus=Nuvens(Palete(cores))

por Pedro Felipe Higa Felizatto -

Entendo, no entanto eu só utilizo funções e classes nativas pra construir minha nuvem.

Em resposta à Pedro Felipe Higa Felizatto

Re: EP08 - limbus=Nuvens(Palete(cores))

por Luiz Felype Azevedo Pascoal -

Sugiro colocar por partes:

cores=<dicionário de cores aqui>

palete=Palete(cores)

limbus=Nuvem(palete)

 

Apesar do Shell reconhecer a atribuição direta, talvez o corretor não reconheça.

Em resposta à Pedro Felipe Higa Felizatto

Re: EP08 - limbus=Nuvens(Palete(cores))

por José Coelho de Pina -

Oi Pedro e Gabriela,

"Erro ao criar objeto Nuvens 'limbus = Nuvens(Palete(cores))'. ", mas ao colocar no shell ele não dá erro

Hmm.
Apenas insistindo e repetindo o que o Hitoshi escreveu.
Se vocês usarem a classe Palete (do módulo palete.py) de um colega ou a minha, vocês sabem dizer se o __init__() da sua classe Nuvens funciona (= não explode)?

Resumindo: os métodos da sua classe Nuvens devem funcionar independentemente de qual implementação da classe Palete vocês usam: Palete de um colega, Palete do Hitoshi, Palete minha, ...

Em resposta à Pedro Felipe Higa Felizatto

Re: EP08 - limbus=Nuvens(Palete(cores))

por Pedro Felipe Higa Felizatto -

Finalmente a nuvens deu certo!

No meu palete, o dicionário é guardado em palete.d, mas não é guardado assim em todas as paletes, então não poderia construir minha nuvem a partir de palete.d

No entanto todas as classes Palete tem uma função que parecia meio estranha e sem sentido, mas agora entendo o porquê da existência dela.

O que eu achei ruim foi pedir o palete.py, o que me fez achar que nuvens iria rodar com a minha palete, não com qualquer outra