
aazevedo1984
(usa Slackware)
Enviado em 19/01/2009 - 17:41h
Estou vendo python a muito pouco tempo, pois todos dizem q e mais facil dq java, porem ainda acho java muito mais facil e pratico em certos pontos, por exemplo estou tentando apenas instanciar uma classe Pessoa contendo nome idade q sao fornecidos pelo usuario e um id q deve comecar em 0 e ser acrescentado em 1 a cada vez q a classe e instanciada, eis o codigo
class Pessoa():
__IDT__=0
def __init__(self,nom="",idad=0):
Pessoa.__IDT__=Pessoa.__IDT__+1
self.id=Pessoa.__IDT__
self.nome=nom
self.idade=idad
def getIdade(self):
return self.idade
def setIdade(self,idade):
self.idade=idade
def setNome(self,nome):
self.nome=nome
def getNome(self):
return self.nome
def getID(self):
return self.id
# fim da classe
func=Pessoa()
func.setIdade(18)
func.setNome("teste")
print "%s" % func.getNome()
print "%d" % func.getIdade()
print "ID func: %d" % func.getID()
func2=Pessoa("Eu",20)
print "%s" % func2.getNome()
print "%d" % func2.getIdade()
print "ID func2: %d" % func.getID()
o resultado fica
teste
18
ID func: 1
Eu
20
ID func2: 1
eu gostaria q fosse
teste
18
ID func: 1
Eu
20
ID func2: 2
Consigo fazer isto em java sem o menor problema porem aq nao funciona por nada, e pelo q entendi somente preciso escrever self.qualquerCoisa e esta qualquerCoisa passa a existir como atributo/variavel de acordo com oq ela recebe. Alguem sabe como posso corrigir este codigo para algo q funcione da maneira q eu espera q acontecesse?