top of page

PYTHON - Simplicidad, flexibilidad y elegancia.

Foto del escritor: Ingenian Bloggers
Ingenian Bloggers
2 ago. 2018
3 min de lectura

Actualizado: 23 ago. 2018

Escrito por: Marlon Acosta

Ingeniero desarrollador.



Python nace a finales de los 80's, como un proyecto en el Centro para las Matemáticas y la Informática, CWI por sus siglas en Inglés.

En cuanto al nombre de este lenguaje de programación, se rumora que su creador, Guido van Rossum, lo tomó del sexteto humorístico británico Monty Python del cual era fan, al igual que el término Spam para referirse al correo no deseado.


El Autor y su filosofía:

Antes de adentrarse en las características, propiamente dichas del lenguaje, resulta valioso estudiar su "filosofía", o mejor dicho, en términos prácticos, revisar la versión veinte de "The Python's Enhancement Proposals" o Propuestas de mejora de Python (PEP): The Zen of Python, en donde se nombrar algunos aforismos que nos

acercan a ella; solo voy a nombrar unos pocos:

-Explícito es mejor que implícito. -La legibilidad cuenta. -Simple es mejor que complejo. -Los casos especiales, no son tan especiales como para romper las reglas. -Plano es mejor que anidado

Está última, en terminos prácticos es pasar de tener operaciones con loops —donde en muchos casos, nos tardamos un rato en descubrir que hace el código — a declarar expresiones de una sola línea (y sí, esto es programación funcional) con las funciones propias de las listas y los arrays (reduce, map, forEach, etc).


En cuanto a "Explícito es mejor que implícito", lo considero un atributo clave ya que desde mi perspectiva contribuye a la mantenibilidad del código.


¿Qué es Python?

Bueno, ahora sí, ¿Qué características son las que considero las más llamativas de Python?

Por definición, Python es un lenguaje interpretado, orientado a objetos y de alto nivel.

Ya, pero eso es lo clásico, no?. Seguro, continua:

Viene con estructuras de datos integradas de alto nivel (listas, tuplas, diccionarios, conjuntos, entre otros.), tipado dinámico y enlace dinámico, además soporte para módulos y paquetes que son manejados por pip, que vendría siendo su package manager o administrador de dependencias.


Ahora, en mi experiencia, he pasado por C++ más que por Java y considero que la sintaxis es mucho más legible y la curva de aprendizaje mucho más corta, lo que reduce el costo de mantenimiento de un software, no?


Ahora claro, en cuanto a performance, hemos visto que Python es un lenguaje interpretado, lo que lo hace, de cierta forma, un poco mas lento en ejecución que otros lenguajes, como digamos Java o NodeJS, pero también es cierto que los programas como Java, se demoran mucho, pero mucho más tiempo en ser escritos, y ni hablar después del mantenimiento del código y los despliegues; para poner un ejemplo, imagina el tiempo que gasta un desarrollador, pensando y definiendo los tipos de datos para estructuras y variables en Java, en Python por otro lado, puede utilizar las listas y los diccionarios, estructuras polimórficas muy poderosas.


Solo de demostración, el clásico Hola Mundo:


Diferencia al programar con lenguaje Python y Java
Phyton-vs-Java

¿Cuáles son las principales aplicaciones de Python?


Cómo Python es un lenguaje que soporte varios paradigmas, tiene una cantidad enorme de paquetes y módulos y es de muy sencilla escritura se ha encontrado un montón de usos, en distintas y a veces no tan distintas áreas:


1. Desarrollo web

2. Backend para Web Services y APIs Rest

3. Integración con Web services SOAP

4. Machine learning

5. Inteligencia Artificial

6. Simulación

7. Infraestructura y DevOps

8. Unit Testing


En próximas partes de esta serie, pienso profundizar un poco más en sus aplicaciones, haciendo la salvedad que la lista es realmente extensa, pero mientras puedes revisar con más detalle todas sus aplicaciones desde la propia página de Python.org.


¡Ah! No hay que olvidar también que hay empresas de gran calibre que confían en Python, empresas como: Youtube (Google), Quora, Yahoo, NASA, IBM, Mozilla, Instagram y Dropbox quien de hecho, contrató a Guido van Rossum en 2012 dándole una cálida bienvenida.


Finalizando por ahora...

En esta breve introducción al mundo de Python, quiero compartir una imagen que resume mi opinión en una caricatura, estoy ansioso por contar más sobre este gran lenguaje y comunidad de desarrollo.





35 comentarios


Nancy Hopper
Nancy Hopper
hace 6 horas

One aspect of Python's flexibility that deserves attention is its potential to improve how professionals handle complex information in specialised industries. Readability and automation become particularly valuable when dealing with large datasets, repetitive calculations and document-heavy workflows. In construction, for example, quantity surveyors regularly work with cost records, payment applications, variations and contractual correspondence, where small inconsistencies can have wider financial implications. Python can help automate certain data checks, compare records and organise information more efficiently, although professional judgement remains essential when interpreting contractual obligations. This distinction becomes especially relevant when considering FIDIC for QS professionals, since effective contract administration requires both technical understanding and the ability to assess how information relates to specific contract provisions. There is also an…

Me gusta

David Kerr
23 oct.

Really enjoyed reading through this breakdown, especially the reminder about The Zen of Python and how the aforism "explicit is better than implicit" makes code so much easier to maintain over time. It's funny how moving from more verbose languages like Java or C++ makes you appreciate clean data structures right away. Sometimes when students or colleagues are tackling heavy data processing or sorting through numbers for a business statistics assignment help australia project, Python's readability saves so much frustration compared to dealing with rigid types. It makes you wonder how much faster junior developers could pick up programming fundamentals if every language prioritized readability this much from day one.

Me gusta

John Adams
John Adams
23 oct.

One thing I appreciate about business intelligence is that it helps turn complicated datasets into information that people can actually use. Reporting and visualisation tools can be particularly useful when managers need to compare performance across different departments. During my reading, I noticed the phrase best business intelligence assignment writing help in the wider context of learning about BI, which made me consider how much practice these concepts require. Students need opportunities to work with sample datasets and explain their findings clearly. I would be curious to learn more about how organisations maintain data accuracy, especially when information comes from several different systems.

Me gusta

Julia Erhart
Julia Erhart
14 sept.

The points made about "The Zen of Python" really resonated with me, especially the principle that explicit is better than implicit. It’s so true that readability saves an incredible amount of time when maintaining code down the line compared to languages like Java. While balancing coding projects and university coursework last semester, I ended up looking into Assignment Help for College Students Australia  just to keep my head above water with all the deadlines, so I definitely appreciate tools and languages that simplify the workload. The contrast shown in writing a basic script vs full object declarations really highlights Python's elegance. Do you think its lower execution speed is still a major drawback for newer AI frameworks?

Me gusta

Dorable yong
Dorable yong
4 sept.

If you had the chance to prepare for site management before taking the position, what would you want to learn first? I would probably look at planning, communication, team coordination, safety, quality, documentation, and resource management. Those subjects can all affect how effectively a site manager keeps a project organized. Your priorities might be different depending on your previous construction experience and the type of role you are aiming for. That is where researching suitable education can become useful. The College of Contract Management provides a relevant learning option through its dedicated site management course. Anyone interested can review the site management course before deciding whether it fits their needs. If the programme covers the areas you want to develop, enrolling…

Me gusta

INGENIAN SOFTWARE S.A.S

NIT 830.137.868-6

CMMI-Nivel-5.png
Marca-Colombia-TICs.png

Av Calle 127 # 14 - 54, Oficina 605

+57 (1)  744 6538

57 317 667 0783

info@ingenian.com

Atención de Lunes a Viernes de 8:00a.m a 5:00p.m

Brochure-Digital-Ingenian.jpg
  • LinkedIn Ingenian Software
  • Blog Ingenian Software
  • Facebook Ingenian Software

Somos responsables en el Tratamiento de Datos Personales bajo el cumplimiento de la Ley 1581 de 2012, el Decreto 1377 de 2013 y demás disposiciones legales sobre la protección de Datos Personales. Con el envío de cualquier información y/o documento a Ingenian Software por diversos canales de comunicación, el titular de éstos autoriza a efectuar el tratamiento de los mismos por parte de nuestra compañía.

bottom of page