Guía para principiantes de la programación orientada a objetos de Python

Guía para principiantes de la programación orientada a objetos de Python / Programación

Python se utiliza en todo, desde la Raspberry Pi hasta el aprendizaje automático. Sin embargo, si desea trabajar en un proyecto grande, deberá saber cómo funciona Python con la programación orientada a objetos (OOP). Este artículo cubrirá los conceptos básicos que necesita saber.

Si no estás realmente en la programación, por qué no echas un vistazo a estos mejores bocetos de Monty Python en lugar de 8 de los mejores bocetos de Monty Python Flying Circus [Cosas que ver] 8 de los mejores bocetos de Monty Python Flying Circus [Cosas que ver] Muy pocas otras compañías de comedia han abierto nuevos caminos como lo hizo Monty Python cuando se emitieron por primera vez en la BBC en 1969. No solo el humor era fresco, estaba bien presentado y era muy, muy ... Leer más? Ellos inspiraron el lenguaje, después de todo!

Espera, Python no es un lenguaje real?

Dejemos una cosa clara: Python es un lenguaje de programación real, es popular y está creciendo rápidamente. Solo porque se lee como pseudocódigo y puedes codificar Minecraft en la Pi con Aprender Python y Electrónica con Minecraft Pi Edition Aprender Python y Electrónica con Minecraft Pi Edition ¿Siempre quisiste aprender a codificar pero no sabías por dónde empezar? Aprende a controlar Minecraft en la Raspberry Pi usando Python y algunos aparatos electrónicos simples. Lea más, eso no significa que deba descartarlo como un idioma menor.

OOP es la piedra angular del desarrollo de software moderno, y Python es más que capaz de mantenerse al día. Puede hacer una o dos cosas de manera diferente a otros idiomas convencionales, pero no dejes que eso te desanime..

Este tutorial asumirá un conocimiento básico de Python, pero cubriremos todo lo complejo en el camino. Si eres nuevo en Python, ¿por qué no ver estos trucos para aprender un nuevo lenguaje de programación? 7 Trucos útiles para dominar un nuevo lenguaje de programación 7 Trucos útiles para dominar un nuevo lenguaje de programación Está bien sentirse abrumado cuando estás aprendiendo a codificar. Probablemente olvidará las cosas tan rápido como las aprende. Estos consejos pueden ayudarlo a conservar mejor toda la información nueva. Leer más, o sobre un proyecto simple como leer y escribir en Google Sheets con Python Cómo leer y escribir en Google Sheets con Python Cómo leer y escribir en Google Sheets con Python Python puede parecer extraño e inusual, sin embargo, es fácil para aprender y usar. En este artículo, te mostraré cómo leer y escribir en Google Sheets usando Python. Lee mas ?

Requisitos previos y configuración de Python

Antes de comenzar, es posible que desee configurar el entorno de desarrollo de Python. Usaremos Python 3.6.5 y, si bien puede usar versiones anteriores, tendrá menos problemas si utiliza una versión bastante nueva..

Querrá crear un entorno virtual. Aprenda cómo utilizar el entorno virtual de Python. Aprenda cómo utilizar el entorno virtual de Python. Si usted es un desarrollador experimentado de Python, o simplemente está empezando, aprender cómo configurar un entorno virtual es esencial para Cualquier proyecto de Python. Lea más si aún no tiene una, e instale PIP para Python Cómo instalar PIP para Python en Windows, Mac y Linux Cómo instalar PIP para Python en Windows, Mac y Linux Muchos desarrolladores de Python confían en una herramienta llamada PIP para Python para que todo sea mucho más fácil y rápido. Aquí es cómo instalar PIP. Lea más si no está instalado (aunque viene con la mayoría de las instalaciones modernas de Python). Una vez que tengas esas configuraciones, estarás listo para salir. Empecemos!

Los fundamentos de Python: Clases

UNA clase Es el bloque de construcción básico de la POO. Una clase es como un plan o plano. Definen las características de un objeto. ¿Qué es la programación orientada a objetos? Los conceptos básicos explicados en términos de Layman ¿Qué es la programación orientada a objetos? Los conceptos básicos explicados en términos de Layman La mayoría de los lenguajes de programación modernos admiten el paradigma de "programación orientada a objetos" (OOP). Pero, ¿qué es exactamente OOP y por qué es tan útil? Lee mas . Si tiene una clase de automóvil, por ejemplo, puede indicar que hay cuatro ruedas, al menos un asiento y un motor..

Aquí es cómo hacer una clase en Python:

Clase Vehículo: "" "Esta clase define vehículos." "" Pase 

Simple verdad? Hay algunas cosas que suceden aquí. Note el comentario en la parte superior de la clase. Este es un comentario especial llamado cadena de documentación. Debería explicar un poco sobre tu código. Usando las comillas triples (“””), le estás diciendo a Python que esta es una cadena de documentación.

los pasar palabra clave le dice a Python que no haga nada. Es una palabra especial, y puedes pensarla como un todo. Hará que su código se ejecute, pero en realidad no hace nada..

Si ejecuta este código, verá que no pasa nada. Necesitas instanciar tu clase Esto significa efectivamente ir y construir un objeto basado en el plan definido en la clase. Puede crear tantas copias como desee, cada una con diferentes propiedades. Así es como haces eso:

red_car = Vehículo ()

Si ejecutas esto de nuevo, verás que no pasa nada. El código está funcionando correctamente, pero no le has dicho que haga nada visible. los Vehículo clase define planos para un vehículo, y esta última línea crea un objeto de vehículo y le da un nombre de carro rojo.

Es posible hacer tantos objetos como quieras:

red_car = Vehículo () green_car = Vehículo () blue_car = Vehículo ()

Vamos a añadir un poco más de código. Agrega un método llamado __en eso__ al Vehículo clase:

clase Vehículo: "" "Esta clase define vehículos." "" def __init __ (self, color = "plain"): "" "Imprimir algunas propiedades de automóvil personalizadas" "" ('New car made!') self.color = color red_car = Vehículo () green_car = Vehículo () blue_car = Vehículo ()

Presta especial atención a esto __en eso__ método. Debe comenzar y terminar con dos guiones bajos. Este es un método especial en Python. Se llama automáticamente cuando creas un nuevo objeto. Ejecutar este código mostrará las palabras “Nuevo coche hecho!” tres veces.

Finalmente, __en eso__ toma un argumento personalizado llamado color. El signo de igual y la cadena inmediatamente después le dicen a Python que establezca el color en “llanura” si no se especifica Puedes modificar tus instancias para configurar el color de tu auto en la creación:

red_car = Vehículo (color = 'rojo') green_car = Vehículo (color = 'verde') blue_car = Vehículo (color = 'azul')

Si imprime el color del auto, verá que cada instancia tiene un color diferente, aunque los tres se hicieron con la misma especificación (la clase). Python le permite acceder a casi cualquier variable u objeto; no muchos otros idiomas le permiten hacer esto:

imprimir (red_car.color) imprimir (green_car.color) imprimir (blue_car.color)

Esto funciona porque has asignado color a auto.color. Self es otra palabra clave especial en Python, y se refiere a cada instancia específica de una clase. Siempre que se utilice, puede establecer o acceder a datos únicos para esa instancia. El coche rojo tiene un color rojo, por ejemplo..

Modifica tu __en eso__ Método para almacenar el ruido del coche en una variable:

self.noise = 'Vroooom'

Para imprimir el ruido del coche, simplemente puede acceder a la ruido Variable, como hiciste con el color, pero esta no es la mejor idea. ¿Qué sucede si, cuando maneja un automóvil, quiere que se ejecute algún otro código al mismo tiempo, quizás un código que aún no haya escrito? ¿O qué pasa si quiere cambiar la forma en que un automóvil maneja en el futuro? Creando un función (también conocido como método), puedes controlar estrechamente cómo funcionan las cosas. Añade esto debajo de tu __en eso__ método:

def drive (self): print (self.noise)

Puedes llamar a este método de manera bastante simple:

red_car.drive ()

Cuando llames al conducir Método, Python imprimirá el sonido. Puede expandir esto para realizar todas las tareas, pero déjelo como está por ahora.

¡Bien hecho! A estas alturas ya deberías tener un control firme sobre lo básico. Debes poder crear y utilizar tus propias clases, cada una con sus propias habilidades y funciones únicas..

¿Qué pasa con las variables privadas en Python??

Los objetos privados son muy comunes en la mayoría de los otros idiomas. Son simplemente variables o funciones a las que no se puede acceder fuera de la clase. Pueden ser códigos que requieren que se cumplan condiciones especiales antes de su uso, o simplemente diseñados para uso interno. Cualquiera sea la razón, las instancias no pueden acceder a miembros privados ... a menos que esté codificando en Python.

Python no tiene miembros privados. En cambio, Python se basa en un sistema de honor: “Todos somos adultos consentidos..” Los programadores de Python entienden que es posible que desee jugar con las partes internas sensibles de una clase, y eso está bien, por lo que nunca debería haber nada realmente inaccesible..

Sin embargo, Python tiene una convención aceptada para marcar ciertas variables como “privado” en el sentido de “Esta variable es para uso interno y probablemente no necesite tocarla.” La convención es prefijar nombres de variables con un guión bajo:

_some_secret_variable = 42

Esto actúa como una advertencia para otros programadores. Python no te impedirá acceder a esto, pero el subrayado te advierte que no fue diseñado para usarse de esta manera, y debes continuar bajo tu propio riesgo..

A veces es la forma de Python de jugar con cosas ocultas, pero corres el riesgo de que las cosas no funcionen correctamente..

Entendiendo la herencia en Python

La herencia es otra forma de reducir la duplicación y reutilizar el código. Pensando en una relación padre e hijo, la herencia permite la niño para compartir código común con el padre. Implementemos un coche eléctrico, que hereda del padre..

Agregue este código debajo de su Vehículo clase:

clase ElectricCar (Vehículo): "" "Clase de vehículo eléctrico." "" def charge (self): print ('Zzz') electric_car = ElectricCar () electric_car.charge () electric_car.noise = 'Whoosh' electric_car.drive ()

Después de la Coche eléctrico se define, la Vehículo La clase se especifica dentro de dos corchetes. Esto le dice a Python que Coche eléctrico es un niño de Vehículo. Esto le da acceso a todos los datos y métodos proporcionados en Vehículo.

El coche eléctrico tiene sus propios métodos especiales. Puede cargar (algo que otros vehículos no pueden hacer). Al cambiar el ruido del automóvil y luego conducir, puede ver que el automóvil eléctrico emite un sonido diferente y no tuvo que definir el método de conducción. Esto se debe a que la unidad se hereda del padre.

Amplíe su conocimiento de Python aún más

Estos ejemplos han demostrado lo fácil que puede ser OOP en Python. Solo hemos cubierto los conceptos básicos, pero una vez que los tienes, el resto es fácil..

Si desea continuar aprendiendo Python, o tal vez poner en práctica estas habilidades OOP, ¿por qué no echa un vistazo a las matrices y listas en Python, o sobre cómo obtener Python y JavaScript para comunicarse??

Si todo esto te ha dejado con ganas de más, entonces no olvides visitar estos mejores sitios web para aprender Python. Los 5 mejores sitios web para aprender. Programación de Python. Los 5 mejores sitios web para aprender sobre programación de Python. Estas son las mejores maneras de aprender Python en línea, muchas de las cuales son completamente gratuitas. Lee mas .

Explorar más sobre: ​​Programación Orientada a Objetos, Programación, Python.