Clases de pitón

Clases de pitón

Introducción

Las clases son la piedra angular de la programación orientada a objetos. Son los planos utilizados para crear objetos. Y, como su nombre indica, toda la programación orientada a objetos se centra en el uso de objetos para crear programas.

No escribes objetos, en realidad no. Se crean o se instancian en un programa que usa una clase como base. Entonces, diseñas objetos escribiendo clases. Eso significa que la parte más importante de comprender la programación orientada a objetos es comprender qué son las clases y cómo funcionan.

Ejemplos del mundo real

La siguiente parte si va a ser abstracta. Puedes pensar en objetos en la programación al igual que los objetos en el mundo real. Las clases son entonces la forma en que describirías esos objetos y los planes para lo que pueden hacer.

Comience pensando en un coche. El automóvil es un término bastante general, pero hay algunos conceptos universales que puede aplicar a casi cualquier automóvil. Todos tienen cuatro ruedas, un motor, transmisión, puertas, un volante, etc. Además, todos tienen una marca y modelo. ¿No se podría almacenar cada una de esas piezas de información en una variable para describir un automóvil específico??

¿Qué hay de lo que pueden hacer?? Casi todos los automóviles pueden hacer las mismas cosas básicas, pero pueden hacerlas de manera diferente o a diferentes velocidades. Luego podría describir las acciones que un automóvil puede realizar utilizando funciones. Sin embargo, en la programación orientada a objetos, las funciones se denominan métodos.

Entonces, si buscaba usar objetos de "automóvil" en su programa, crearía una clase de "automóvil" para servir como un plan con todas las variables que desea contener información sobre sus objetos de "automóvil" y todos los métodos para describir lo que le gustaría que sus autos puedan hacer.

Una clase de Python

Ahora que tiene una idea general de lo que es una clase, es mejor echar un vistazo a una clase real de Python y estudiar cómo está estructurado.

Class Car (Object): Make = 'Ford' Model = 'Pinto' Year = '1971' Kilometrae = 253812 Engine = '4 Cylinder' Transmisión = 'Manual' HorsePower = 100 Color = 'Orange' Def Move_Forward (self, Speed) : imprime ("avanzar en % s" % velocidad) def move_backward (self, velocidad): imprimir ("moverse hacia atrás a % s" % velocidad) 

Crear una clase se parece mucho a crear una función. En lugar de defensor Usas la palabra clave, clase. Entonces, le das un nombre, como lo harías con una función. También tiene un paréntesis como una función, pero no funcionan de la forma en que piensas. Para una clase, la paréntesis le permite extender una clase existente. No se preocupe por esto ahora mismo, solo comprende que tienes que poner objeto allí porque es la base de todas las demás clases.

A partir de ahí, puedes ver un montón de cosas familiares que verías flotando en cualquier programa de Python, variables y funciones. Hay una serie de variables con información sobre el automóvil y un par de métodos (funciones) que describen lo que el automóvil puede hacer. Puede ver que cada uno de los métodos toma dos parámetros, uno mismo y la velocidad. Puede ver que la "velocidad" se usa en los métodos para imprimir qué tan rápido va el automóvil, pero "yo" es diferente.

Que es yo mismo?

Muy bien, así que "yo" es la mayor peculiaridad en la forma en que Python maneja la programación orientada a objetos. En la mayoría de los idiomas, las clases y los objetos son conscientes de sus variables en sus métodos. Python es necesario que se les demuestre que los recuerde. Cuando pasa "yo" a un método, esencialmente está pasando ese objeto a su método para recordarle todas las variables y otros métodos en ese objeto. También debe usarlo al usar variables en los métodos. Por ejemplo, si desea emitir el modelo del automóvil junto con la velocidad, se ve así.

Imprimir ("Su %s está avanzando en %s" %(self.modelo, velocidad))

Es incómodo y extraño, pero funciona, y realmente no vale la pena preocuparse por. Solo recuerda incluir "yo" como el primer parámetro de tus métodos y "yo mismo."Frente a tus variables, y estarás bien.

Usando una clase

Estás listo para comenzar a usar la clase de coche. Cree un nuevo archivo de Python y pegue la clase en. A continuación, puede crear un objeto usandolo. Crear o instanciar, un objeto en Python se parece a la línea de abajo.

mycar = car ()

Eso es todo. Para crear un nuevo objeto, solo debe hacer una nueva variable y establecerla igual a la clase en la que está basando su objeto en.

Pruebe su nuevo Ford Pinto de 1971. Obtenga el objeto de su automóvil para imprimir su marca y modelo.

imprimir (" %s %s" %(mycar.hacer mycar.modelo))

El uso de un . entre un objeto y sus componentes internos se llama notación de puntos. Es muy común en OOP. Funciona para los métodos de la misma manera que lo hace para las variables. Intente poner su automóvil en reversa a las 5 mph.

mi coche.Move_backward ('5 mph')

¿Qué pasa si quieres cambiar el color de tu coche?? Definitivamente también puedes hacerlo, y funciona como cambiar el valor de cualquier otra variable. Intenta imprimir primero el color de tu coche. Luego, cambie el color e imprímalo de nuevo.

Imprimir ("El color de mi auto es % s" % mycar.color) mycar.color = "verde" imprimir ("El color de mi auto es % s" % mycar.color) 

Tu coche es verde ahora. ¿Qué pasa con un auto nuevo?? Si hicieras un nuevo objeto de auto, sería verde? Dale un tiro.

MyNewCar = Car () impresión ("El color de mi auto nuevo es % s" % mynewcar.color) 

Ese naranja. Se copian nuevos objetos de la clase, y la clase todavía dice que el color es naranja. Los objetos existen en la memoria de la computadora mientras se ejecuta un programa. Cuando cambia los valores dentro de un objeto, son específicos de ese objeto tal como existe en la memoria. Los cambios no persisten una vez que el programa se detenga y no cambiará la clase de la que se creó.

Pensamientos de cierre

Eso es suficiente en las clases por ahora. Obviamente, hay mucho más que cubrir, pero debe tomarse un tiempo para familiarizarse con todo lo que está cubierto hasta ahora. Pruebe los ejercicios a continuación para manipular la clase de "automóvil" y familiarizarse con cómo funcionan las clases y los objetos en Python.

Práctica

  1. Crear un objeto de automóvil nuevo y cambiar su color a rojo.
  2. Haga que su automóvil avance a las 15 mph.
  3. Pon una transmisión automática en su automóvil.
  4. Crea un auto nuevo. Use un operador booleano para comparar los colores de los autos.
  5. Cambiar el mover hacia atrás método para incluir el modelo del coche.

Tutoriales de Linux relacionados:

  • Cosas para instalar en Ubuntu 20.04
  • Una introducción a la automatización, herramientas y técnicas de Linux
  • Cosas que hacer después de instalar Ubuntu 20.04 fossa focal Linux
  • Sistema colgado de Linux? Cómo escapar a la línea de comando y ..
  • Mint 20: Mejor que Ubuntu y Microsoft Windows?
  • Cosas para instalar en Ubuntu 22.04
  • Mastering Bash Script Loops
  • Ubuntu 20.04 Guía
  • Cosas que hacer después de instalar Ubuntu 22.04 Jellyfish de Jammy ..
  • Tutorial de depuración de GDB para principiantes