Unidad 1 - Qué Es Python
Unidad 1 - Qué Es Python
Programar en Python
Interfaz gráfica SWING
¿Qué es Python?
Pero Python no solo es un lenguaje de programación, sino que además es interpretado, ¿qué
significa esto? que la computadora por sí sola no conoce el lenguaje y lo comprende, sino
que necesita un intérprete, lo cual sería similar a visitar un país del cual no conocemos ni
una palabra de la lengua nativa pero viajamos con una persona que conoce nuestra lengua y
la de ese país y nos hace de traductor para que logremos entendernos con las demás
personas.
Programar en Python | 1
Un interrogante que se presenta en este punto es: ¿hay otro tipo de lenguajes que no sean
interpretados? La respuesta es si, pero ese punto excede a los alcances de este curso
Una de las principales ventajas de utilizar un lenguaje interpretado es que se puede ir
probando el código a medida que lo vamos escribiendo, un intérprete no sabe ni le importa
cuando termina el código para hacer su trabajo. Esto hace que programar en un lenguaje
interpretado sea muy dinámico y de esta forma se optimiza el tiempo de programación y
depuración del código escrito. ¿Por qué nos conviene aprender Python?
Entre las ventajas que presenta el uso de Python podemos destacar: facilidad de uso,
legibilidad de código, integración con sistemas embebidos, optimización del lenguaje para
trabajar con múltiples núcleos paralelizando tareas, variedad de bibliotecas y una amplia
comunidad de usuarios consolidada a nivel mundial, entre muchos otros.
Vamos a ver que Python presenta una sencillez tal, que cualquier persona realizando una
pequeña inversión de tiempo puede comenzar a realizar programas sencillos en este
lenguaje. Esto se debe, entre muchas cosas, a la gestión automática de memoria o las
operaciones sencillas de lectura y escritura, en las que se diferencia de otros lenguajes, tal
es el caso de C en el cual tanto la asignación de memoria como otras características son
mucho más engorrosas de programar.
Todos los que nos hayamos enfrentado con el aprendizaje de un lenguaje nuevo de
programación, sabemos que según como nos enfoquemos en esta tarea puede resultar muy
emocionante o terriblemente tediosa. Más aún si queremos aprender por nuestra cuenta.
Programar en Python | 2
Sin embargo, Python fue desarrollado pensando en que su aprendizaje sea sencillo incluso
como primer lenguaje de programación, ¿por qué? Porque su sintaxis es muy sencilla. Al
utilizarse expresiones comunes, se escribe menos código obteniendo resultados más rápido.
O sea, Python requiere de menos líneas de código para realizar tareas básicas, que si
programamos las mismas tareas en Java o C++. Otro plus que nos ofrece Python tiene que
ver con su librería estándar, la cual permite ejecutar otras funciones y tareas más complejas
con mayor facilidad que otros lenguajes.
Programar en Python | 3
Integración con sistemas embebidos
Programar en Python | 4
Tiene una gran comunidad que lo respalda
Una gran comunidad de usuarios nos garantiza mucha información disponible, numero de
bibliotecas creciente, proyectos y código disponible buscando por internet además de foros
activos en donde podemos consultar y evacuar dudas. Esto hace que tanto el aprendizaje
como la ejecución de proyectos sea muy dinámica.
Para reforzar la idea del por qué programar en Python, veamos el siguiente video
https://youtu.be/9r2wF93vOkM
Por todas las características que mencionamos con anterioridad y además por tratarse de un
lenguaje de código abierto, Python es un aliado perfecto para la Inteligencia Artificial.
Permite plasmar ideas complejas con unas pocas líneas de código, lo que no es posible con
otros lenguajes.
Además, existen bibliotecas proporcionadas por Python, que se usan mucho en los algoritmos
Inteligencia Artificial como Scikitl, una biblioteca gratuita de aprendizaje automático que
presenta varios algoritmos de regresión, clasificación y agrupamiento.
Programar en Python | 5
Python en Big Data
Python resulta muy útil y su uso está muy extendido en el análisis datos y la extracción de
información útil para empresas.
Además de su simplicidad, que es una gran ventaja, Python cuenta con bibliotecas de
procesamiento de datos como ‘Pydoop‘ , que son de gran ayuda para los profesionales, ya
que podemos escribir un código de MapReduce en Python y procesar los datos en el clúster
HDFS.
Otras bibliotecas como “Dask” y “Pyspark” facilitan aún más el análisis y la gestión de datos.
Python es rápido y fácilmente escalable, características fundamentales al querer procesar
un gran flujo de datos y de esta forma resulta útil para generar información en entornos de
tiempo real y a convertir esa información a los lenguajes usados en Big Data.
Programar en Python | 6
Contando con paquetes numéricos como ‘Pandas’ y ‘NumPy’, es natural que los
investigadores hayan comenzado a trabajar con Python dejando de trabajar con software de
simulación y procesamiento de datos pagos como MATLAB.
Python se ocupa de los datos tabulares, matriciales y estadísticos, e incluso los visualiza con
bibliotecas populares como “Matplotlib” y “Seaborn”.
El testing, una de las tareas más arduas que nos pueden encomendar, se simplifica
considerablemente con el uso de Python.
El lenguaje Python también se usa para hacer scraping, o sea, obtener información de otros
sitios web. Algunas aplicaciones construidas con este tipo de frameworks son Instagram, Bit
Bucket, Pinterest.
Con todas las ventajas que venimos nombrando de Python, no parece extraño que un sitio
de la magnitud y con el volumen de datos que maneja Instagram utilice Python.
Al ser un lenguaje en el cual realizar un desarrollo es sencillo, es muy simple de gestionar y
puede manejar sin problemas el gran volumen de visitas que recibe diariamente Python, se
vuelve ideal para los ingenieros que trabajan en estas tareas. Todas las ventajas que
nombramos anteriormente, permiten al equipo de trabajo enfocarse en la experiencia de
usuario.
Programar en Python | 7
Si bien todo el código que hace funcionar a Instagram no esta escrito en Python, y se utilizan
también otros lenguajes tanto en el FrontEnd como en el BackEnd, podemos decir que el
corazón de Instagram se encuentra escrito en Python.
Pinterest, uno de los sitios de imágenes y proyectos más difundidos de la actualidad, también
utiliza Python.
El motor de la plataforma web de Pinterest se encuentra desarrollado completamente con
el lenguaje de programación Python. Además, el framework Django se utiliza en la capa de
aplicación o backend del sitio.
Dropbox
La mayor parte del código de Dropbox está escrito en Python, tanto para el cliente Desktop
como para la aplicación. Además, se utiliza en los controladores de la web, garantizando
que Dropbox funcione perfectamente en cualquier sistema operativo.
Programar en Python | 8
Battlefield 2
BitTorrent
Programar en Python | 9
Este protocolo y su aplicación fueron completamente creados y diseñados en Python, se
lanzó en 2001 y si bien con los años y las diferentes versiones se realizaron algunas
reestructuraciones, su base se mantiene y es un claro ejemplo de lo eficiente y poderoso
que puede resultar Python en el desarrollo de grandes proyectos.
Panda 3D
Panda 3D, es un motor para juegos que contiene gráficos y sonido. Está especialmente
orientado para la creación de juegos en 3D. Su popularidad es muy alta debido a que estamos
hablando de software libre por lo que cualquiera de nosotros podría utilizarlo sin tener que
pagar el derecho de uso. No obstante, grandes corporaciones como Disney también hacen
uso de su código base.
Panda 3D se encuentra desarrollado en Python y C++, pero Python es quien aporta sus
ventajas, siendo reconocido como un motor eficiente y que permite la creación de juegos
de alta calidad.
Programar en Python | 10
Google App Engine
Google App Engine es un servicios de desarrollo web que permite la creación de aplicaciones
web y móviles, conectándose con servicios en la nube tales como Google Cloud y obteniendo
resultados de eficiencia aceptable y profesionales.
Parte de su código está desarrollado en Python y además permite el uso de Python para el
desarrollo web, de esta forma pemite el uso de frameworks para la construcción de sitios
escalables y de un volumen de tráfico considerable.
La NASA
Programar en Python | 11
integración y transformación, que la NASA considera que se perfila como la base fundamental
para la asistencia en el ámbito de la ingeniería en los próximos años; y por último, podemos
mencionar OpenMDAO, una herramienta para resolver problemas de optimización de diseños
multidisciplinarios.
Posee un gran número de bibliotecas que le dan gran versatilidad para solucionar
problemáticas de ámbitos tan diversos como la creación de una aventura gráfica o la
resolución de un problema matemático.
Programar en Python | 12