Translate
domingo, 11 de febrero de 2018
Programación Orientada a Objetos en Python
Como les dije anteriormente estoy estudiando nuevamente python para unas cosas que tengo que hacer. Más allá de esto, vamos a repasar los conceptos de poo en python.
Primero y principal python implementa la poo con clases, como lo hacen la mayoría de los lenguajes. Las clases son una abstracción de un conjunto de objetos, esto luego define el tipo de nuestros objetos. Veamos las clases en python:
class Objeto:
pass
class Antena:
pass
class Pelo:
pass
class Ojo:
pass
Como se puede ver se usa la convención CamelCase para el nombre de las clases, y por supuesto las clases pueden tener atributos y métodos:
class Objeto():
color = "verde"
tamanio = "grande"
aspecto = "feo"
antenas = Antena()
ojos = Ojo()
pelos = Pelo()
def flotar(self):
print 12
Por alguna razón que desconozco el primer parámetro de los métodos debe ser self (en este punto alguien me puede ayudar?). Y tambien se utiliza la misma convención.
Todo muy lindo pero donde están los objetos? veamos como instanciar objetos :
et = Objeto()
print et.color
print et.tamanio
print et.aspecto
et.color = "rosa"
print et.color
Una característica de poo es la herencia que esta implementada en python tambien, se agrega la clase padre entre paréntesis luego del nombre de la clase :
class NuevoObjeto(Objeto):
pie = Pie()
def saltar(self):
pass
Podemos heredar de la clase object que es la clase principal de Python:
class Antena(object):
color = ""
longitud = ""
class Pelo(object):
color = ""
textura = ""
Luego seguimos con el miniresumen.