OO em Python
Não sei aonde está o erro, podem me ajudar?
class Pet: def __init__(self, name, specie): self.name = name self.specie = specie def getName(self): return self.name def getSpecie(self): return self.specie def __str__(self): return "$s is a %s" % (self.name, self.specie) myPet1 = Pet("Pepita", "dog") myPet2 = Pet("Fio", "cat") myPet3 = Pet("Snow", "fish") print(myPet1) print(myPet2) print(myPet3) print("myPet1 name attribute: " + str(myPet1.getName())) print("myPet3 specie attribute: " + str(myPet3.getSpecie())) print("myPet2 name attribute: " + str(myPet2.getName())) print("myPet2 name attribute: " + str(myPet2.getSpecie()))
Lucas Leitão
Curtidas 0
Respostas
Jothaz
19/12/2015
Qual erro esta retornando?
Ante de começar a programar OO você estudou e aprendeu o paradigma de OO?
Por que sem compreender os conceitos vai ficar difícil até ajudá-lo.
Ante de começar a programar OO você estudou e aprendeu o paradigma de OO?
Por que sem compreender os conceitos vai ficar difícil até ajudá-lo.
GOSTEI 0
Lucas Leitão
19/12/2015
A seguinte mensagem é apresentada:
line 14, in __str__ return "$s is a %s" % (self.name, self.specie) TypeError: not all arguments converted during string formatting
GOSTEI 0
Jothaz
19/12/2015
Ante de começar a programar OO você estudou e aprendeu o paradigma de OO?
Você não respondeu a outra pergunta!
GOSTEI 0
Lucas Leitão
19/12/2015
Desculpa Jothaz, fui apressado, bom, tenho uma pequena base, mas confesso que falha.
GOSTEI 0
Jothaz
19/12/2015
Não me leve a mal, mas vou ser extremamente franco, se quer realmente aprender a programar e se profissionalizar não pode queimar etapas.
Tem de aprender os conceitos antes de querer programar, senão não irá a lugar nenhum.
Albert Einstei que foi um dos seres humanos mais geniais dizia: "O único lugar onde o sucesso vem antes do trabalho é no dicionário."
Python é simples e você consegue escrever um monte de código simples, quase banais, mas se quer mesmo aprender tem de estudar mais ante de começar a por a mão na massa, pois quando começar a criar código mais sérios vai aumentar a complexidade.
Não quero com isso menosprezar o desqualificar seu esforço, mas estude e pesquise mais senão vai sair do lugar.
Sobre o erro tente isso:
Tem de aprender os conceitos antes de querer programar, senão não irá a lugar nenhum.
Albert Einstei que foi um dos seres humanos mais geniais dizia: "O único lugar onde o sucesso vem antes do trabalho é no dicionário."
Python é simples e você consegue escrever um monte de código simples, quase banais, mas se quer mesmo aprender tem de estudar mais ante de começar a por a mão na massa, pois quando começar a criar código mais sérios vai aumentar a complexidade.
Não quero com isso menosprezar o desqualificar seu esforço, mas estude e pesquise mais senão vai sair do lugar.
Sobre o erro tente isso:
return "%s is a %s" % (self.name, self.specie):
GOSTEI 0
Lucas Leitão
19/12/2015
Você está certo Jothaz, pode ser franco, não irei achar ruim! toda ajuda é bem vinda. Testar aqui esse trecho de código.
GOSTEI 0
Lucas Leitão
19/12/2015
Deu certo, só um pequeno erro, sem o ":"
GOSTEI 0
Jothaz
19/12/2015
Deu certo, só um pequeno erro, sem o ":"
Como disse tem anos que não uso Phyton e estou sem ele instalado, fiz de cabeça então este tipo de erro pode acontecer mesmo.
Mas que bom que funcionou.
GOSTEI 0
Lucas Leitão
19/12/2015
Ajudou bastante, não da para lembrar de tudo!
GOSTEI 0