En muchas ocasiones nos habréis odio hablar de Python. Pues bien, hoy os vamos a hablar en nuestro blog sobre ello.

Python es un lenguaje de programación cuya sintaxis favorece a un código legible y simple. Esto tiene como consecuencia que la curva de aprendizaje de Python sea muy corta, por lo que es cada vez más utilizado en escuelas y universidades como primer lenguaje de programación. Este lenguaje soporta orientación a objetos, programación imperativa y programación funcional. Además, es un lenguaje multiplataforma, lo que quiere decir que vale cualquier sistema operativo: Windows, Linux, Mac, etc.

Es administrado por la Python Software Foundation y creado a finales de los ochenta por Guido van Rossum. Además, posee una licencia de código abierto.

Phyton es un lenguaje denominado multiparadigma, es decir, que permite varios estilos de programación.

Uno de los objetivo del diseño del lenguaje es la facilidad de extensión. Se pueden escribir nuevos módulos fácilmente en C o C++. Python puede incluirse en aplicaciones que necesitan una interfaz programable.

El intérprete de Python estándar incluye un modo interactivo en el cual se escriben las instrucciones en una especie de intérprete de comandos.

Python fue diseñado para ser leído con facilidad, lo que resulta muy útil y hace que su uso sea muy extendido en el mundo educativo.

Es un lenguaje de programación interpretado, muy flexible y que se puede utilizar en innumerables proyectos. Empresas como Google, Yahoo, Nasa etc. utilizan este lenguaje.

Se puede ejecutar instrucciones de Python desde la línea de comando o creando archivos con extensión *.py.

Además, nos permite controlar hardware y otros programas de terceros.

El desarrollo Web es también un campo en el que Python tiene un excelente soporte y una oferta muy amplia de herramientas y frameworks, siendo Django y Flask de los más utilizados.

Podemos codificar empleando programación lineal, estructurada y orientada a objetos (tengamos en cuenta que esta última es la que predomina en la actualidad).

En los últimos años, la demanda de desarrolladores en el campo laboral no ha dejado de crecer. Hoy en día es muy frecuente encontrar Python en los listados de requerimientos para oportunidades de empleos en empresas de todos los tamaños.

Pros

  • Curva de aprendizaje muy corta.
  • Sintaxis concisa y legible.
  • Buenas prácticas y lineamientos de calidad reforzados por el lenguaje.
  • Soporte extensivo a herramientas de todo tipo incluido por defecto en la biblioteca estándar.
  • Además de la librería estándar, existe una cantidad enorme de paquetes de terceros disponibles a través del índice de paquetes de Python (PyPI).
  • La disponibilidad de paquetes, sumado a la corta curva de aprendizaje, reducen dramáticamente el tiempo de desarrollo.
  • Los desarrolladores de Python generalmente conocen y obedecen buenas prácticas y altos estándares de calidad.
  • Alta demanda en el campo laboral.

Contras

  • La naturaleza de lenguaje interpretado, y restricciones a la concurrencia en la implementación de referencia (CPython), afectan negativamente el rendimiento. Implementaciones alternativas como PyPy resuelven este problema, pero no todos los paquetes pueden utilizarse y su sintaxis está restringida, por ahora, a Python 2.
  • La presencia al mismo tiempo de 2 versiones oficialmente soportadas, 2.7 y 3, ha retrasado la migración a la versión más reciente de muchos paquetes y de las distribuciones y servicios de hospedaje en Internet.

En  el proyecto ConMasFuturo lo estamos usando como base de la programación de nuestros proyectos de Internet De Las Cosas (IoT) con Raspberry Pi.

Además, introducimos a nuestros alumnos al uso de este lenguaje de programación.

Usamos Python para controlar la electrónica conectada a las placas Raspberry Pi a través de unos puertos que son de propósito general y se pueden configurar de entrada y salida. Puertos GPIO, el control de toda la electrónica conectada.

Python

Además, nos permite un control amplio de los programas y comandos del Sistema Operativo donde se integre.

Y el trabajo con todos los elementos multimedia: video, sonido, juegos. Control de hardware y, como mencionábamos antes, todos los dispositivos electrónicos:

  • (Luz, Temperatura, humedad…)
  • Actuadores (luces, motores, servos…)

Por lo tanto, Python ofrece  diversas posibilidades. Las posibilidades son universales y prácticamente infinitas.