Fundamentos del lenguaje Python: programación orientada a objetos en Python
El lenguaje Python es uno de los más populares del mundo y una de sus características más llamativas es su sólido soporte para la programación orientada a objetos (OOP). La programación orientada a objetos es un paradigma de programación que utiliza objetos y sus interacciones para diseñar aplicaciones y programas informáticos. Exploraremos los conceptos fundamentales de la programación orientada a objetos en Python en este capítulo.
Clases y Objetos
En Python, todo es un objeto y cada objeto es una instancia de una clase. Las clases son como plantillas que definen las características (atributos) y comportamientos (métodos) que tendrán tus objetos. Para crear una clase en Python, usamos la palabra clave 'clase', seguida del nombre de la clase.
coche de clase: aprobar
Arriba, creamos una clase vacía llamada Car. Ahora podemos crear objetos de esta clase.
mi_coche = Coche()
Ahora 'my_car' es un objeto de la clase Car.
Atributos y métodos
Los atributos son variables que pertenecen a una clase. Representan las características de los objetos. Los métodos son funciones que pertenecen a una clase y representan el comportamiento de los objetos.
coche de clase: color = 'rojo' # atributo def acelerar(self): # método print('Acelerando...')
Podemos acceder a los atributos y métodos de un objeto usando notación de puntos.
mi_coche = Coche() print(my_car.color) # imprime 'rojo' my_car.accelerate() # imprime 'Acelerando...'
__init__ constructor
El método __init__ es un método especial que se llama automáticamente cuando se crea un objeto. Se utiliza para inicializar los atributos de un objeto.
coche de clase: def __init__(yo, color): self.color = color def acelerar(yo): print('Acelerando...')
Ahora, cuando creamos un objeto Car, debemos proporcionar el color.
my_car = Coche('azul') print(my_car.color) # imprime 'azul'
Herencia
La herencia es una característica de programación orientada a objetos que permite que una clase herede atributos y métodos de otra clase. La clase de la que hereda se llama subclase y la clase de la que hereda se llama superclase.
clase Vehículo: def __init__(yo, color): self.color = color def acelerar(yo): print('Acelerando...') clase Coche(Vehículo): aprobar
Ahora, la clase Car hereda de Vehicle y tiene todos sus atributos y métodos.
mi_coche = Coche('verde') print(my_car.color) # imprime 'verde' my_car.accelerate() # imprime 'Acelerando...'
Estos son los conceptos fundamentales de la programación orientada a objetos en Python. La programación orientada a objetos es una poderosa herramienta para estructurar su código de una manera clara y reutilizable, y Python ofrece toda la funcionalidad necesaria para aprovechar al máximo este paradigma.