¿Es una serpiente? No... Quiero decir, sí... Pero no en este caso.
Python es un lenguaje de programación interpretado de alto nivel que soporta múltiples paradigmas de programación: Imperativo, Orientado a objetos (POO) y Funcional. Es un lenguaje con tipado dinámico y gestión automática de memoria.
Calmaa, vamos a traducir estos conceptos...
Esto quiere decir que la implementación del lenguaje Python en cada computadora se realiza mediante un proceso en el que uno de los principales componentes es el intérprete.
Posee una mayor proximidad al lenguaje humano que al lenguaje de las máquinas, osea binario.
Los paradigmas de programación son los diferentes enfoques que un programador puede utilizar para desarrollar un código y resolver un problema específico.
Imperativo: Las instrucciones se pasan a la computadora en la secuencia u orden en que deben ser ejecutadas.
Orientado a Objetos: Tal vez el más popular de los paradigmas. Utiliza las estructuras denominadas Clases y Objetos, su principal característica es permitir una programación multiplataforma.
Funcional: La característica principal es el uso de estructuras llamadas funciones. Estas funciones separan el código en bloques los cuales cada uno tiene una tarea específica.
Dentro del lenguaje de programación, constantemente trabajamos con tipos de datos, algunos ejemplos son: números enteros (int), secuencia de caracteres (str/string/text) y operadores lógicos (boolean). Tener un tipado dinámico significa que el propio programa 'entiende' el tipo de dato que estamos usando, por lo tanto, no es necesario declarar previamente el tipo de dato.
Python mantiene o limpia constantemente la memoria no utilizada a través de mecanismos como el garbage collector (Recolector de Basura) y la Reference Counting(Recuento de Referencia). De esta forma, el desarrollador no tiene que preocuparse por la gestión manual de la memoria.
Python fue creado por el programador Holandes Guido Van Hossum y su primera versión fue lanzada en 1991 en el Centrum Wiskunde & Informatica - CWI (Instituto Nacional de Investigación para Matemáticas y Ciencias de la Computación) en Holanda.
Guido Van Rossum
Fuente: linuxjournal.com
Al final de la década de los 80, Guido Van Rossum trabajaba con un lenguaje de programación destinado a no programadores llamado ABC, muy utilizado en el sistema operativo Amoeba. Inspirado por la sintaxis fácil del lenguaje, frustrado por el diseño monolítico y otras limitaciones, Van Rossum decidió iniciar un proyecto paralelo que conduciría al nacimiento de Python.
La primera versión del lenguaje Python (0.9.0), fue lanzada en 1991, incluía los conceptos de clases con Herencia, funciones y los tipos fundamentales de datos. Desde entonces, el lenguaje ha recibido diferentes versiones nuevas. Entre estas, las mas famosas son las versiones 2 y 3.
La Python Software Foundation (PSF), fundada en 2001, es una organización sin fines de lucro que tiene la propiedad intelectual relacionada al lenguaje Python.
Actualmente, la PSF es responsable por la protección y la administración general de las versiones del lenguaje.
Desde su concepción, Python existe sobre el principio de convertir la programación en un acto más intuitivo y menos laborioso en su propia estructura.
El método de desarrollo Open Source permite que su propia comunidad de programadores y usuarios ayuden en su mejora continua.
Consideramos que la baja curva de aprendizaje se debe a su sintaxis simple comprensión, Python acaba siendo uno de los lenguajes más populares.
Una caracteristica muy importante para la comunidad de Python es la legibilidad del código, algo que refuerza la idea de ser un lenguaje más cercano al lenguaje humano y más democrático. Este tema es tan importante que hay elementos que hacen incapié en esto: PEP-8 y Zen of Python.
PEP-8 es una guía de estilo y estructura de código muy utilizada que, a pesar de no ser obligatoria para el funcionamiento del lenguaje, acaba por hacer que su lectura sea más fluida. Ya The Zen of Python es un pequeño texto que representa la filosofía de su estilo de programación.
La documentación oficial de Python recomienda el sitio web de Python Checker como ayuda para aquellos que desean "corregir" su propio código de acuerdo con PEP-8.
The Zen of Python se presenta como un Easter Egg dentro de su propio lenguaje. Basta digitar import this en el terminal de Python.
The Zen of Python, by Tim Peters
Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one-- and preferably only one --obvious way to do it.
Although that way may not be obvious at first unless you're Dutch.
Now is better than never.
Although never is often better than right now.
If the implementation is hard to explain, it's a bad idea.
If the implementation is easy to explain, it may be a good idea.
Namespaces are one honking great idea -- let's do more of those!
Traducido al Español
The Zen of Python, por Tim Peters
Bonito es mejor que feo.
Explícito es mejor que implícito.
Simple es mejor que complejo.
Complejo es mejor que complicado.
Lineal es mejor que anidado.
Disperso es mejor que denso.
La legibilidad cuenta.
Los casos especiales no son suficientemente especiales como para romper las reglas.
Aunque prima la practicidad sobre la pureza.
Los errores nunca deben ser silenciados.
A menos que sea explícito.
Ante la ambigüedad no caiga en la trampa de adivinar.
Debe haber una y preferiblemente una manera obvia de hacer algo.
Aunque puede no parecer obvio a menos que seas Holandés.
Ahora es mejor que nunca.
Aunque nunca suele ser mejor que ahora mismo.
Si la implementación es dificil de explicar, es una mala idea.
Si la implementación es fácil de explicar, podría ser una buena idea.
Los espacios de nombres son una gran idea, ¡utilicémoslos más!
Es normal que la mayoría de los lenguajes tengan actualizaciones constantes que constribuyan a su avanze y mejoramiento. La mayoría de estas actualizaciones están en el funcionamiento interno del lenguaje y por lo tanto, no hay preocupación por parte del desarrollador, ya que no es necesario corregir sus códigos. Este no es el caso de la competencia entre Python 2 y Python3.
Spoiler Alert! Python 3 es el vencedor de este enfrentamiento y definitivamente es el futuro del lenguaje. Lanzado en 2008, la nueva versión busca convertir a un uso más facil del lenguaje y cambiar la forma como esta maneja los strings y unicodes, volviendolo más eficiente y fluido.
Debido a que tiene una sintaxis diferente a las versiones 2.x, la versión 3.x se convirtió en la primera en ser incompatible con las versiones anteriores y, a principios de 2020, se suspendió el soporte para las versiones 2.x.
El área de Desarrollo Web abarca todas las actividades utilizadas para crear sitios web y aplicaciones basadas en la web. Hay dos subcategorías cuando hablamos de desarrollo web: Front-end y Back-end.
El lenguaje Python entra en esta historia a través de sus frameworks de desarrollo web back-end, Django y Flask. Estos frameworks son estructuras que facilitan la creación de lógica de back-end, asignando URLs, ayudando con la integración con bases de datos y creando APIs.
En esta nueva era del Big Data, saber extraer, manipular y analizar datos se ha vuelto más importante que nunca y en un momento u otro, algún lenguaje de programación tendría que destacar por su eficiencia en estas actividades.
Python brilla en la ciencia de datos gracias a su sintaxis fácil de entender, su implementación de la interpretación lista para usar y el soporte de múltiples bibliotecas de gráficos y estadísticas que la comunidad crea constantemente. Ya sea análisis gráfico o modelos predictivos hechos con Machine Learning, Python resulta ser el favorito de los científicos de datos.
Podemos destacar algunas bibliotecas de extracción, análisis y visualización de datos como Pandas, Matplotlib y Seaborn. En el área de Machine Learning podemos mencionar Scikit-learn, TensorFlow y Pytorch.
Todos sueñan utomatizar tareas y dejar que la computadora haga todo el trabajo repetitivo. Bueno, ¡Python también puede hacer eso! Nuevamente, la sintaxis fácil y la velocidad del lenguaje marcan la diferencia optimizando intentos y pruebas.
A través de bibliotecas como Selenium, PyAutoGUI y BeautifulSoup, podemos automatizar tareas rutinarias: enviar correos electrónicos o mensajes o incluso usar la técnica de Web Scraping para extraer datos de un sitio web.
No es casualidad que Python sea uno de los lenguajes de programación más populares en la actualidad. Su fácil sintaxis lo convierte en un lenguaje democrático que no se restringe a los profesionales de la tecnología, siendo utilizado incluso en las escuelas como un primer contacto con la lógica de programación. El modelo de desarrollo de código abierto fomenta el crecimiento de una comunidad activa que crea nuevas bibliotecas y brinda soporte continuo para la mejora del lenguaje. Y por último, el uso de Python como principal lenguaje de manipulación de datos en la actual Era de los Datos demuestra su gran presencia en el mercado laboral. Se puede decir que Python no es solo el lenguaje de programación del momento, sino ¡el lenguaje de programación del futuro!
Para adentrarte al mundo de Python, puedes acceder a estas formaciones:
Bruno Divino
Bruno está estudiando Tecnología en Análisis y Desarrollo de Sistemas y es parte del equipo de Instructores aquí en Alura, enfocándose en Python/DevOps. Su objetivo es ayudar a cada estudiante de la mejor manera posible en su viaje de aprendizaje y fomentar constantemente la pasión por la tecnología.
Traducido para Alura Latam por Luis Puig.
Cursos de Programación, Front End, Data Science, Innovación y Gestión.
Luri es nuestra inteligencia artificial que resuelve dudas, da ejemplos prácticos y ayuda a profundizar aún más durante las clases. Puedes conversar con Luri hasta 100 mensajes por semana
Paga en moneda local en los siguientes países
Cursos de Programación, Front End, Data Science, Innovación y Gestión.
Luri es nuestra inteligencia artificial que resuelve dudas, da ejemplos prácticos y ayuda a profundizar aún más durante las clases. Puedes conversar con Luri hasta 100 mensajes por semana
Paga en moneda local en los siguientes países
Puedes realizar el pago de tus planes en moneda local en los siguientes países:
País | |||||||
---|---|---|---|---|---|---|---|
Plan Semestral |
487.37
BOB |
68314.51
CLP |
305385.67
COP |
65.90
USD |
265.11
PEN |
1424.44
MXN |
2977.87
UYU |
Plan Anual |
738.82
BOB |
103560.24
CLP |
462944.29
COP |
99.90
USD |
401.89
PEN |
2159.35
MXN |
4514.26
UYU |
Acceso a todos
los cursos
Estudia las 24 horas,
dónde y cuándo quieras
Nuevos cursos
cada semana