Buscar

Classes em Python: Definição e Instanciação

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Classes em Python 
 
A definição de uma classe, como abaixo, cria um novo objeto de classe, e um 
novo espaço de nomes: 
 
class MyClass: 
 "A simple example class" # MyClass.__doc__ retorna essa string (docstring) 
 i = 12345 # i é uma variável de classe, acessível por MyClass.i 
 def f(self): # um método de classe, acessível por MyClass.f() 
 return 'hello world' 
 def __init__(self, lista): # chamado automaticamente pelo construtor para inicializar 
 self.lista = lista # define uma variável de instância (atributo) e a inicializa 
 
Instanciando a classe: 
 
x = MyClass([1,2,3]) #cria uma nova instância e retorna sua referência em x 
x.lista # o atributo de x, inicializado com a lista [1,2,3] 
 
 
Outro exemplo: 
 
class Fracao: 
 def __init__(self, num, den): 
 self.num = num 
 self.den = den 
 def somar(self, f): 
 den = self.den * f.den 
 num = self.num * f.den + self.den * f.num 
 return Fracao(num, den) 
 def impr(self): 
 print str(self.num)+'/'+ str(self.den) 
 
Instâncias são chamadas em Python de instance objects (objetos de 
instância). 
 
Exemplo de uso da classe. 
 
x= Fracao(1,2) # constrói uma nova instância de Fracao, e x é a referência 
y = Fracao(3,8) # outra instância de Fracao 
z = x.somar(y) # o método somar() constrói outra Fracao com a soma. 
z.impr() 
14/16

Outros materiais