Python
El lenguaje que optimiza para quien lee, y así se ganó a las ciencias.
- Primera versión
- 1991
- Creado por
- Guido van Rossum
- Tipado
- Dinámico y fuerte, con anotaciones estáticas opcionales
- Extensiones de archivo
- .py
Para qué sirve
Python es a lo que recurres cuando tu tiempo cuesta más que el de la computadora. Corre análisis de datos, computación científica y machine learning casi por defecto. Es primera opción para automatización y pegamento. Sostiene buena parte del back end de la web. Casi nada de eso fue planeado. Python se extendió porque leerlo es fácil, y el código se lee mucho más de lo que se escribe.
El trato está a la vista. Python es lento donde menos importa. Un bucle sobre un millón de elementos en Python puro es deprimente, pero ese bucle normalmente no se escribe en Python: NumPy, pandas y PyTorch empujan la aritmética hacia C, Fortran y CUDA. A Python le queda nombrar las cosas, ordenarlas y no estorbar.
Y luego está la biblioteca estándar. Una instalación funcional ya habla JSON, CSV, SQLite, HTTP, subprocesos, fechas y rutas, y PyPI tiene casi todo lo que falta. Para muchos problemas la respuesta de verdad es una docena de líneas y un import.
De dónde viene
Guido van Rossum empezó Python en las vacaciones de Navidad de 1989 en el CWI de Ámsterdam, como sucesor de un lenguaje de enseñanza llamado ABC. La versión 0.9.0 salió en febrero de 1991. La meta de ABC, que un lenguaje debía leerse bien y enseñarse bien, es lo único que Python nunca abandonó. La indentación significativa es la consecuencia más visible.
Python 2.0 llegó en 2000 con comprensiones de listas y un recolector de basura. Python 3.0 lo siguió en 2008 y rompió la compatibilidad a propósito para arreglar el texto: las cadenas pasaron a ser Unicode, los bytes se volvieron su propio tipo, print se volvió una función. La migración tomó más de una década y dolió lo suficiente para volverse una historia con moraleja que se cuenta en las comunidades de otros lenguajes. Python 2 se retiró por fin en 2020.
Lo que vino después de la ruptura fue una racha larga y tranquila de consolidación. F-strings, async/await, dataclasses, coincidencia estructural de patrones, y un sistema de tipado gradual en el que hoy se apoya todo el ecosistema. Van Rossum dejó el cargo de Dictador Benevolente Vitalicio en 2018, desgastado por la recepción del operador walrus, y desde entonces un Steering Council electo dirige el lenguaje.
Cómo se siente teclearlo
Python es un placer para el mecanografiado al tacto e implacable si te descuidas. Pocas llaves, casi ningún punto y coma, así que tus manos se quedan en palabras y no en símbolos. Pero la indentación es la sintaxis. Cuatro espacios son una pulsación real con consecuencias reales. Los dos puntos que cierran cada apertura de bloque, los guiones bajos en medio de cada nombre y los dunders de doble guion bajo son los ejercicios que rinden.
364 pasos en 13 tours, desde lo básico hasta programas completos.
Los tours
- Fundamentos del lenguajeTodo lo que necesitas antes de las partes interesantes. 72 pasos.
- Python pythónicoLa diferencia entre Python que funciona y Python que se lee como Python. 53 pasos.
- Herramientas de dominioLa biblioteca estándar haciendo trabajos reales. 41 pasos.
- NumPyNumPy es la capa sobre la que está parada casi toda biblioteca científica de Python, y el arreglo es la única idea que contiene. 22 pasos.
- PolarsPolars es la biblioteca de dataframes que tomó las lecciones de pandas y empezó de nuevo en Rust. 32 pasos.
- Web scrapingNueve pasos, dos bibliotecas, una advertencia honesta. 9 pasos.
- Testing con pytestpytest con la sentencia assert haciendo el trabajo, que es gran parte de por qué la gente lo usa. 9 pasos.
- pandasLa biblioteca de dataframes que convirtió a Python en una opción seria para trabajar con datos, y aquella cuya API vas a estar leyendo en los notebooks de otros durante años. 26 pasos.
- Machine learning con scikit-learnLa verdadera contribución de scikit-learn es la API de estimadores: fit, predict, transform, y el hecho de que cada modelo de la biblioteca la obedece. 25 pasos.
- Graficar con matplotlibmatplotlib es viejo, enorme, y sigue siendo de lo que están hechas la mayoría de las figuras científicas. 14 pasos.
- Servicios web y acceso a datosCómo se ve hoy un servicio web en Python en la práctica. 19 pasos.
- Computación científica con SciPySciPy es lo que usas cuando NumPy se queda corto. 23 pasos.
- Estadística con statsmodelsDonde scikit-learn predice, statsmodels explica. 19 pasos.
Documentación oficial
- La documentación de Python
- La referencia del lenguaje
- La biblioteca estándar
- Índice de PEPs (el registro de diseño)
- PyPI, el índice de paquetes