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 formattingGOSTEI 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