Ir al contenido
wannacode

Qué es Python

En resumen: Python es un lenguaje de programación para datos, inteligencia artificial, automatización y servidores: el intérprete python convierte el archivo en bytecode y lo ejecuta.

Problema

Por qué Python

Hay cientos de lenguajes de programación. Cada uno sirve para algo, pero no todos sirven igual de bien para todo. Antes de dedicar meses a uno de ellos, es justo saber dónde lo vas a usar.

Python es un lenguaje en el que los programas son cortos de escribir y se leen casi como texto normal:

  • datos e inteligencia artificial: analizar tablas, dibujar gráficos, entrenar modelos. La mayoría de las bibliotecas de aprendizaje automático se usan desde Python;
  • automatización: pequeños programas que cambian el nombre a miles de archivos, rellenan hojas de cálculo o revisan un sitio web cada mañana;
  • sitios web y servicios web: la parte del servidor, con bibliotecas como Django y FastAPI;
  • ciencia y educación: en muchas universidades el primer lenguaje es Python, y los científicos lo usan para cálculos y experimentos.

Python existe desde 1991. Cada año sale una versión nueva, y las bibliotecas ya hechas se cuentan por cientos de miles.

La idea

Del texto al programa

El programa que escribes es texto normal en un archivo. Aquí tienes un programa completo:

shop.py
print("El pedido n.º 1024 ha sido aceptado.")
Salida
El pedido n.º 1024 ha sido aceptado.

Sí, ese es todo el programa: una línea. Llegaremos a las palabras que hay en él en la lección «Tu primer programa». Aquí importa otra cosa: el procesador de la computadora no entiende este texto. Algo tiene que traducirlo.

  1. Escribes el código fuente en un archivo llamado shop.py.
  2. Lo ejecutas con el comando python shop.py. El programa python se llama intérprete. Primero revisa cómo está escrito todo el archivo y lo traduce a bytecode. Esto pasa en la memoria, cada vez que ejecutas el programa: no hay un paso de compilación aparte que tengas que lanzar tú.
  3. El mismo intérprete ejecuta el bytecode, línea por línea.

Hay un Python para Windows, macOS y Linux. Por eso puedes llevar el propio shop.py a otra computadora y funciona sin ningún cambio. Esto se llama independencia de la plataforma.

print("El pedido n.º 1024 ha sido aceptado.")
Paso a paso, en palabras
  1. Escribes el código fuente: texto normal en el archivo shop.py.
  2. No hay un compilador aparte que tengas que lanzar: Python leerá el archivo por sí mismo.
  3. Así que a otra computadora va el propio shop.py, no un archivo compilado.
  4. El mismo shop.py va sin cambios a Windows, macOS y Linux.
  5. Python en cada sistema revisa el archivo, lo traduce a bytecode y lo ejecuta. La salida es la misma.
Más precisamente, para curiosos
  • La revisión abarca todo el archivo. Si falta un paréntesis en la segunda línea, el programa no imprime nada, ni siquiera la primera línea: Python se detiene con un SyntaxError y el número de línea antes de ejecutar nada. Un nombre mal escrito (totl en lugar de total) es distinto. Ese error (NameError) aparece solo cuando el programa llega a su línea, y las líneas de arriba ya se han ejecutado.
  • El Python estándar (CPython) no traduce el programa a código máquina. El intérprete ejecuta el bytecode, así que para cálculos pesados Python es más lento que Java y C#. Las bibliotecas de cálculo (NumPy) están escritas en C y hacen rápido la parte pesada. Desde Python 3.13 existe también la compilación JIT (traducción a código máquina mientras el programa se ejecuta), pero es experimental y está desactivada por defecto.
  • El bytecode del archivo que ejecutas se queda en la memoria. Python escribe bytecode en el disco (la carpeta __pycache__, archivos .pyc) solo para los archivos que el programa trae con import, para no tener que traducirlos cada vez.
  • La memoria. Cada programa ocupa memoria para sus datos. En lenguajes como C, el programador libera la memoria que ya no hace falta, y si se le olvida o se equivoca, el programa empieza a ocupar cada vez más memoria o se cae. Python lo hace por ti: el recolector de basura (garbage collector) encuentra los datos a los que el programa ya no puede llegar y libera su memoria.
  • En Python, la memoria de la mayoría de los datos se libera en cuanto nada en el programa apunta a ellos, y el recolector de basura se encarga de los casos más complicados.

La idea

Qué aprenderás

El curso está formado por módulos. Cada módulo usa solo cosas de los anteriores:

  1. Fundamentos del lenguaje: variables, entrada y salida, cálculos, condiciones, bucles, listas, texto.
  2. Funciones: código que escribes una vez y llamas muchas veces.
  3. Clases y objetos: tus propios tipos, como Order o Student.
  4. Herencia y polimorfismo: lo que comparten varios tipos, en un solo lugar.
  5. Errores y excepciones: qué hace el programa cuando algo sale mal.
  6. Texto y archivos: trabajar con cadenas, patrones de búsqueda (regex) y archivos.
  7. Colecciones: listas, pila, cola, diccionarios, conjuntos.
  8. Python moderno: funciones lambda, procesar datos por pasos y las novedades del lenguaje.
  9. Programas del mundo real: pruebas, concurrencia, red, bases de datos.

Fuera del camino principal hay juegos y proyectos: programas completos que construyes paso a paso.

Las bibliotecas por las que Python es más conocido (NumPy y pandas para datos, PyTorch para inteligencia artificial) no están en este curso. El curso enseña el lenguaje en sí. Después tendrás todo lo necesario para aprenderlas por tu cuenta.

La idea

Cómo se aprende aquí

Cada lección es una serie de tarjetas, una idea por tarjeta. Normalmente empieza con un problema de la práctica y después muestra qué pasa en realidad, a menudo con una animación junto al código. Luego viene una pequeña tarea: predecir la salida, completar lo que falta, encontrar el error. Al final hay un ejercicio que resuelves en tu propio editor y un test corto.

Tu progreso se guarda en el navegador: la lección continúa desde la tarjeta a la que llegaste.

El mapa de todo el curso está en la página principal del curso.

No te saltes los ejercicios. Leer código y escribir código son habilidades distintas, y la segunda solo se consigue escribiendo.

La idea

Los errores son parte del trabajo

Tus primeros programas a menudo no arrancarán. Se te olvidarán unas comillas, un paréntesis o los dos puntos, o sangrarás mal una línea, y Python se negará a ejecutar el archivo.

No es una nota sobre ti. El mensaje de error está para ayudar: te dice en qué línea está el problema y cuál es. Los programadores con experiencia también ven estos mensajes todos los días. La diferencia es que han aprendido a leerlos con calma. Empezaremos a leerlos en la primera lección con código.

Si algo no sale durante mucho rato, déjalo y vuelve un poco más tarde. A menudo ves el error enseguida cuando lo miras de nuevo.

En resumen

En resumen

  • Python se usa para datos e inteligencia artificial, automatización, servidores y ciencia.
  • El código fuente (shop.py) lo ejecutas con python shop.py: el intérprete revisa el archivo, lo traduce a bytecode y lo ejecuta. El mismo archivo funciona en cualquier sistema.
  • La memoria la libera automáticamente el recolector de basura.
  • El curso está formado por módulos, y cada lección por tarjetas. Los ejercicios se hacen en tu propio editor.
  • Un mensaje de error es una ayuda, no una nota.

Lo siguiente es preparar tu computadora: qué instalar para poder ejecutar tu primer programa.

Creado por Ivo Gergov como parte de la campaña de Evo Tech por una educación accesible en programación ·