Imprimir

Manual de Python: Objetos

Objetos

Python incorpora programación orientada a objetos, con todas las ventajas que este paradigma ofrece. Una clase se puede considerar como una colección de propiedades y de métodos que acceden a esas propiedades. Para definir la clase Perro que tiene una propiedad (peso) y un método (Suma) haremos:

#!/usr/bin/python
class Perro:
    "Animal que ladra"
 
    peso = 0
    def Suma(self, x):
        self.peso = self.peso + x
 
x = Perro()
print x.peso
x.Suma(10)
print x.peso
print x.__doc__

... obtenemos:

$ python test.py
0
10
Animal que ladra

Si prefirimos generar un objeto en un estado inicial conocido en vez de un objeto vacío, incluiremos el método __init__(self) para inicializar el nuevo objeto:

#!/usr/bin/python
class Perro:
    "Animal que ladra"
 
    def __init__(self, x):
        self.peso = x
 
    def Suma(self, x):
        self.peso = self.peso + x
 
x = Perro(5)
print x.peso
x.Suma(10)
print x.peso

... obtenemos:

$ python test.py
5
15

Python soporta clases derivadas o extendidas. Una clase derivada es una extensión de otra clase y tiene todas las variables y funciones de la clase base ("herencia") más lo que se agregue en la definición extendida. Para crear una clase derivada haremos:

#!/usr/bin/python
class clase_derivada( clase_base ):
	...
 
class otra_clase_derivada( modulo.otra_clase_base ):
	...

Deja un comentario