¿Cómo funcionan las clases y objetos en Python?

Autor: | Última modificación: 16 de abril de 2024 | Tiempo de Lectura: 3 minutos
Temas en este post:

Algunos de nuestros reconocimientos:

Premios KeepCoding

Para entender qué son las clases y objetos en Python, primero hay que entender qué es y cómo funciona la programación orientada a objetos y por qué es relevante en un lenguaje de programación como Python.

¿Qué son las clases y objetos en Python?

Python es un lenguaje de programación orientado a objetos. Esto quiere decir que casi todos los elementos y funcionalidades dentro del lenguaje son objetos con sus respectivas propiedades y métodos.

Clases

Las clases, por lo tanto, son plantillas o proyectos dentro de las que se guardan los objetos. Estas proporcionan un medio para agrupar datos y funcionalidades distintas.

Las clases no son objetos en Python como tal, sino que albergan a los mismos. No obstante, la creación de una nueva clase crea un nuevo tipo de objeto, lo que permite crear nuevas instancias de ese tipo.

Objetos

Los objetos son aquellas instancias que van dentro de una clase, esto es, cualquier elemento dentro de esta. Cada una de estas instancias u objetos tiene unos atributos definidos para conservar su estado.

Asimismo, cada una de las instancias y clases pueden tener métodos dentro, definidos por su misma clase, para modificar su estado.

Así pues, una clase es como un modelo o categoría, mientras que un objeto o instancia es una copia de la clase con valores reales.

Los objetos constan de:

  • Estado: es el atributo o atributos de un objeto. También hace referencia a sus propiedades.
  • Comportamiento: son los métodos de un objeto. El comportamiento también refleja la respuesta de un objeto a otros objetos.
  • Identidad: es el nombre único de un objeto y permite que este interactúe con otros

Métodos

Los métodos son funciones que están definidas dentro de una clase y operan sobre los atributos de la misma, al tiempo que permiten definir las funcionalidades o responsabilidades de la clase.

El objetivo de un método dentro de las clases y objetos en Python es ejecutar las actividades que tiene encomendadas la clase a la que pertenece.

Los atributos de un objeto se modifican mediante un llamado a sus métodos.

Existen dos tipos de métodos:

  • Getters: en este tipo de método dentro de las clases y objetos en Python, el primer método retorna un valor. Los getters normalmente incluyen la palabra «get» en el nombre del método, a modo de cápsula informativa.
  • Setters: estos métodos reciben un parámetro y este parámetro es asignado al atributo nombre. Al igual que con el anterior, se acostumbra a incluir la palabra «set» en el nombre del método.
clases y objetos en python

¿Cómo definir clases y objetos en Python?

Definir clases y objetos en Python es una tarea fácil, al menos en sus primeros niveles. Lo realmente difícil es entender cómo funcionan y cuál es su verdadera utilidad.

Para que quede un poco más claro, te explicaremos de dónde viene la POO o programación orientada a objetos. Esta disciplina es lo opuesto a la programación estructurada, que es en donde tú, en un solo lugar, pones todo el código.

Esto puede ser el camino más simple a primera vista; no obstante, es mucho más tedioso, ya que si tenemos miles y miles líneas de código, será imposible encontrar algo que necesitemos, mientras que si tenemos diferentes clases y objetos en Python y sus respectivos atributos, se nos hará mucho más fácil la búsqueda y nuestro trabajo se verá más organizado.

La POO básicamente consiste en guardar todo en carpetas y subcarpetas.

Entonces, ¿cómo definimos clases y objetos en Python?

Veamos un ejemplo:


# Instanciando una clase
  
class Gato:
 
    # Creamos la clase y definimos los atributos
    attr1 = "Antonio"
    attr2 = "gato"
 
    # Definimos el método
    def div(self):
        print("Soy", self.attr1)
        print("Soy un", self.attr2)
 
# Instanciación del objeto
Rodger = Dog()
 
print(Rodger.attr1)
Rodger.fun()

Así de rápido podemos crear clases y objetos en Python con sus características primordiales.

¿Te gustó?

Lo expuesto en este artículo es la base que te puede llevar a formas y ejemplos mucho más específicos. Si quieres seguir aprendiendo sobre clases y objetos en Python y todos los tipos de funcionalidades que nos ofrece este lenguaje, te invitamos a realizar nuestro Big Data, Inteligencia Artificial & Machine Learning Full Stack Bootcamp, una formación intensiva en la que podrás adquirir toda la fundamentación teórica y práctica para incursionar rápidamente en el mundo tech y en un mercado laboral muy prolífico. ¡Sigue persiguiendo tus sueños y contacta con nosotros para solicitar más información!

Posts Relacionados

¡CONVOCATORIA ABIERTA!

Big Data, IA & Machine Learning

Full Stack Bootcamp

Clases en Directo | Profesores en Activo | Temario 100% actualizado