Python online - IDE, editor, compilador, intérprete

Escribe y ejecuta Python 3.12 online sin instalar nada. La biblioteca estándar, input() y paquetes como NumPy y pandas se cargan automáticamente. El código se ejecuta en tu navegador.

Python 3.12 (Pyodide 0.26) · Se ejecuta en tu navegador, así que tu código nunca llega a nuestros servidores.
main.pyPython
Salida

            
Entrada (stdin), una línea por cada llamada a input()
Ctrl/⌘ + Enter para ejecutar

Funciones del compilador de Python online (IDE, editor & intérprete)

Escribe, ejecuta y prueba código Python online y gratis. Esta página funciona como IDE, editor de código, compilador e intérprete de Python online, todo en uno: escribe tu código, pulsa Ejecutar y verás el resultado al momento. Todo se ejecuta en tu navegador, sin nada que instalar ni cuentas que crear.

  • Ejecuta código al instante: Python 3.12 (Pyodide 0.26), con resultados en menos de un segundo tras la primera carga.
  • Editor de código: resaltado de sintaxis, números de línea, emparejamiento de corchetes y cierre automático de corchetes.
  • Entrada del programa (stdin): escribe la entrada que lee tu programa antes de ejecutarlo.
  • Errores claros: los mensajes de error y las advertencias aparecen en el panel de salida, igual que en tu propio ordenador.
  • Pantalla completa: Ctrl/⌘ + Shift + F, tamaño de fuente ajustable, diseño en paralelo o apilado y paneles redimensionables.
  • Guardado automático: tu código se guarda en tu navegador; descárgalo como main.py o cópialo con un clic.
  • Experimenta sin riesgo: un límite de tiempo y un botón Detener acaban con los bucles infinitos.
  • Privado: el entorno de ejecución de Python funciona en tu dispositivo, así que tu código nunca se sube.
  • Modo oscuro y atajos de teclado: Ctrl/⌘ + Enter ejecuta el código.
  • Gratis: sin registro y sin límites de uso.

Aprende otros lenguajes de programación

Cómo usar el compilador de Python online

  1. Escribe o pega tu código en el editor. La página empieza con un ejemplo corto; Restablecer ejemplo lo recupera en cualquier momento.
  2. Si tu programa llama a input(), escribe las respuestas en el cuadro Entrada (stdin), debajo de la salida, una línea por cada llamada a input().
  3. Pulsa Ejecutar o usa Ctrl + Enter (⌘ + Enter en Mac).
  4. Consulta el resultado en el panel Salida. Todo lo que se imprime en stderr, incluidos los tracebacks, se resalta como error.
  5. Elige un límite de tiempo de 5, 15 o 60 segundos. Si un script tarda más (por ejemplo, un while True: accidental), se detiene automáticamente. También puedes pulsar Detener en cualquier momento.

La primera ejecución descarga el entorno de ejecución de Python, de unos 10 MB. El navegador lo guarda en caché, así que las ejecuciones siguientes arrancan mucho más rápido. Usa Copiar o main.py para guardar tu script.

Tu código nunca sale de tu dispositivo. Python se ejecuta dentro de tu navegador en un Web Worker, así que no se sube ni se guarda nada en nuestros servidores. El editor recuerda tu último código en el almacenamiento local del navegador, y en ningún otro sitio.

Qué admite

El compilador usa Python 3.12 mediante Pyodide 0.26, el intérprete CPython compilado a WebAssembly. Es CPython de verdad, no una imitación parecida a Python, así que el lenguaje se comporta exactamente igual que en tu ordenador.

  • La biblioteca estándar: math, collections, itertools, datetime, json, re, dataclasses, statistics y más.
  • Carga automática de paquetes: cuando tu código importa un paquete que ofrece Pyodide, como NumPy o pandas, se descarga al momento. Hay disponibles muchos paquetes científicos y de Python puro.
  • Entrada estándar con input() y sys.stdin, alimentada desde el cuadro stdin.
  • async/await: el código se ejecuta con runPythonAsync, así que funciona un await en el nivel superior.

Limitaciones que debes tener en cuenta:

  • Sin sockets de red. Módulos como socket, urllib.request y requests no pueden abrir conexiones desde aquí.
  • Sin archivos persistentes. Puedes crear y leer archivos con open(), pero viven en memoria y se pierden al recargar la página o pulsar Detener.
  • Los gráficos no se muestran. Puedes importar matplotlib, pero no se muestra ninguna figura, así que imprime números o tablas en su lugar.
  • No se pueden instalar paquetes con código nativo que Pyodide no incluya.

Referencia rápida de Python

from dataclasses import dataclass

@dataclass
class Item:
    name: str
    price: float

cart = [Item("pen", 1.5), Item("book", 12.0)]
total = sum(i.price for i in cart)
print(f"{len(cart)} items, total {total:.2f}")

if total > 10 and cart:
    print("Free shipping!")
TareaSintaxis
Imprimir texto con formatoprint(f"{x:.2f}")
Leer una línea de entradaname = input("Name? ")
Convertir la entrada en un númeron = int(input())
Comprensión de listas[x * 2 for x in data if x > 0]
Recorrer un diccionariofor k, v in d.items():
Gestionar un errortry: ... except ValueError as e: ...

Consejos

  • Si tu programa pide datos más veces de las líneas que tiene el cuadro stdin, Python lanza EOFError. Añade una línea por cada llamada a input().
  • Las importaciones grandes, como pandas, tardan unos segundos la primera vez. La descarga cuenta para el límite de tiempo, así que elige 60 s para scripts pesados.
  • Cada ejecución empieza con variables nuevas, pero los módulos que ya has importado siguen cargados, así que las ejecuciones repetidas son rápidas.
  • ¿Trabajas con salida JSON? Pégala en el formateador JSON para darle formato y validarla.
Consejo: al pulsar Detener se cierra el entorno de ejecución de Python. La siguiente ejecución lo vuelve a iniciar desde la caché del navegador, lo que tarda un momento.

Preguntas frecuentes

¿Es un intérprete de Python de verdad?

Sí. Pyodide es CPython 3.12 compilado a WebAssembly. La sintaxis, las funciones integradas y la biblioteca estándar coinciden con las de Python de escritorio. Las principales diferencias se deben a que se ejecuta en un navegador: no hay acceso a la red ni un sistema de archivos permanente.

¿Puedo usar NumPy y pandas?

Sí. Impórtalos como siempre y se descargarán la primera vez que ejecutes el código. Muchos otros paquetes científicos y de Python puro que ofrece Pyodide se cargan de la misma forma.

¿Cómo le doy datos de entrada a mi programa?

Escribe los valores en el cuadro stdin, una línea por cada llamada a input(), en el orden en que los pide tu programa. Después pulsa Ejecutar.

¿Por qué mi script se detiene a los 15 segundos?

El límite de tiempo predeterminado te protege de bucles infinitos que congelarían la pestaña. Elige 60 s en el menú del límite de tiempo para cálculos más largos.

¿Puedo ejecutar también otros lenguajes?

Sí. Prueba el compilador de JavaScript online o explora todas las herramientas para desarrolladores gratuitas.

Actualizado

Copiado al portapapeles