Python Playground

Pyodide en el navegador · Ejecuta, aprende, rompe cosas… y luego arréglalas 😅
Cargando Pyodide…
Editor
Tip: Ctrl+Enter ejecuta · Ctrl+L limpia
Solo consola. Nota: algunos imports (ej. matplotlib) pueden tardar la primera vez.
⌨️ Entrada (stdin) para input()
Escribe una entrada por línea. Cada input() consume la siguiente línea.
Documentación
Librerías, input(), tips avanzados

✅ Librerías que normalmente están disponibles

Este playground usa Pyodide (Python en WebAssembly). Puedes importar muchas librerías ya portadas en la distribución de Pyodide, por ejemplo: numpy, pandas, matplotlib, scipy, sympy, scikit-learn, y también utilitarias como regex, PyYAML, lxml y cryptography.

Tip: la primera vez que importas algo pesado puede tardar porque lo descarga/carga.

Lista completa (oficial): Packages in Pyodide

⌨️ Entrada por teclado con input()

Abre “Entrada (stdin)” debajo del editor y escribe una entrada por línea. Cada input() consume la siguiente línea.

nombre = input("Nombre: ")
edad = int(input("Edad: "))
print("Hola", nombre, "tienes", edad)

Si tu código pide más input() que líneas disponibles, verás un EOFError (o sea: te faltó meter entradas en el stdin).

🧪 Cosas avanzadas que puedes practicar

  • Modo REPL: las variables se mantienen entre ejecuciones (puedes correr por partes).
  • Archivos “virtuales”: puedes escribir/leer con open() (se quedan mientras no recargues la página).
  • HTTP en navegador: requests/urllib3 existen, pero con límites del browser (CORS, etc.).
  • Interop con JavaScript: prueba from js import document o from js import fetch.

🧯 Limitaciones realistas

  • No es un servidor: corre en tu navegador.
  • No hay “input() interactivo” bloqueante: se usa la caja de stdin por líneas.
  • Instalar paquetes arbitrarios de PyPI normalmente requiere modo async/top-level await; esta versión se enfoca en estabilidad y práctica.

Nota realista: esto corre Python dentro del navegador con WebAssembly. Es genial para practicar, pero no es un servidor.