Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #Exercicio 1
- class pessoa(object):
- def __init__(self,nome,endereco,telefone,idade,data_de_nascimento):#cria uma instancia da classe aceitando parametros na abertura.
- self.endereco=endereco
- self.data_de_nascimento=data_de_nascimento
- self.__nome=nome#O '__' torna o atributo privado(encapsulamentando) tornando o acesso e mudança apenas através de getters e setters
- self.__telefone=telefone
- self.__idade=idade
- self.L = []
- def getnome(self):
- return self.__nome
- def gettelefone(self):
- return self.__telefone
- def setnome(self):
- novonome=str(raw_input('digite um novo nome: '))
- self.__nome=novonome
- def settelefone(self,novotelefone):
- self.__telefone=novotelefone
- def setidade(self,novidade):
- self.__idade=novidade
- def getidade(self):
- return self.__idade
- def processo(self,pessoa):
- self.L.append(pessoa)
- def verprocesso(self):
- for i in self.L:
- return i.getnome()
- def __str__(self):
- pessoa = (str(self.__nome)+'\n'+str(self.endereco)+'\n'+str(self.__telefone)+'\n'+str(self.__idade)+'\n'+str(self.data_de_nascimento)+'\n'+str(self.L))
- print pessoa
- return pessoa
- Jace = pessoa('Jace Beleren','Ravnica','0000',4582,'unknow')
- Liliana = pessoa('Liliana Vess','Innistrad','0000',4300,'unknow')
- print'''
- Pessoas instânciadas
- Jace = pessoa('Jace Beleren','Ravnica',0000,4582,'unknow')
- Liliana = pessoa('Liliana Vess','Innistrad',0000,4300,'unknow')
- Jace.getnome()
- Liliana.getnome()
- Jace.processo(Liliana)
- Liliana.processo(Jace)
- Jace.verprocesso()
- Liliana.__str__()
- str(Liliana)
- Jace.__str__()
- str(Jace)
- '''
- class pfisica(pessoa,object):
- def __init__(self,nome,endereco,telefone,idade,data_de_nascimento,cpf,peso,altura,profissao):
- super(pessoa,self).__init__(nome=,endereco,telefone,idade,data_de_nascimento)
- self.__cpf=cpf
- self.__peso=peso
- self.__altura=altura
- self.profissao=profissao
- def setnome(self,novonome):
- self.__nome=novonome
- def setcpf(self,cpf):
- self.__cpf=cpf
- def setpeso(self,peso):
- self.__peso=peso
- def setaltura(self,altura):
- self.__altura=altura
- def getnome(self):
- return self.__nome
- return self.__cpf
- def getpeso(self):
- return self.__peso
- def getaltura(self):
- return self.__altura
- def __str__(self):
- pfisica = (str(self.__nome)+str(self.__cpf)+str(self.__altura)+str(self.__peso))
- print pfisica
- return pfisica
- print '''obj----classe--------nome------endereco--telefone--idade--data_de_nascimento--cpf--peso--altura--profissao'''
- print '''rick---pfisica--Ricardo Boechat---SP-------0000-----60-----------1959---------cpf---70-----1.7--Jornalista'''
- print '''rick = pfisica('Ricardo Boechat','SP',0000,60,1959,'cpf',70,1.7,'Jornalista')'''
- rick = pfisica('Ricardo Boechat','SP',0000,60,1959,'cpf',70,1.7,'Jornalista')
- #'pfisica(pessoa)' herda de 'pessoa()' todos os atributos e métodos
- # OBJECT aparece ali como uma segunda classe mãe, aonde se pode herdar do python outras caracteristicas.
- # Costuma ser o padrão qd se fala em programação orientada a objetos
- # super(pessoa,self) marca a classe mãe e inicializa os parametros com init
- #'''Ao criar um construtor na classe herdeira, o mesmo vai sobrepor o construtor da mãe(__init__)'''
- # Ao criar um método com o mesmo nome de um método na classe mãe, vc sobrepõe o mesmo.
- # Métodos e atributos são herdaveis da classe mãe.
- # Ao sobrepor um método:
- #''' EXEMPLO:
- #def setnome(self,novonome,sobrenome):
- # super(pessoa,self).setnome() '''houve sobreposição, mas atraves do método super foi possível chamar o método da classe mãe conjuntamente'''
- # self.__sobrenome = novosobrenome
- #'''
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement