Come usare il compilatore Python online
- Scrivi o incolla il tuo codice nell'editor. La pagina parte con un breve esempio; Ripristina esempio lo riporta in qualsiasi momento.
- Se il programma chiama
input(), digita le risposte nella casella Input (stdin) sotto l'output, una riga per ogni chiamata ainput(). - Premi Esegui o usa Ctrl + Invio (⌘ + Invio su Mac).
- Leggi il risultato nel pannello Output. Tutto ciò che viene stampato su
stderr, compresi i traceback, è evidenziato come errore. - Scegli un limite di tempo di 5, 15 o 60 secondi. Se uno script dura di più (per esempio un
while True:lasciato per sbaglio), viene fermato automaticamente. Puoi anche premere Interrompi in qualsiasi momento.
La prima esecuzione scarica il runtime di Python, circa 10 MB. Il browser lo mette in cache, quindi le esecuzioni successive partono molto più in fretta. Usa Copia o main.py per salvare il tuo script.
Il tuo codice non lascia mai il tuo dispositivo. Python gira dentro il tuo browser in un Web Worker, quindi nulla viene caricato o salvato sui nostri server. L'editor ricorda il tuo ultimo codice nella memoria locale del browser, e in nessun altro posto.
Cosa è supportato
Il compilatore usa Python 3.12 tramite Pyodide 0.26, l'interprete CPython compilato in WebAssembly. È vero CPython, non un'imitazione simile a Python, quindi il linguaggio si comporta esattamente come sul tuo computer.
- La libreria standard:
math,collections,itertools,datetime,json,re,dataclasses,statisticse altri moduli. - Caricamento automatico dei pacchetti: quando il codice importa un pacchetto fornito da Pyodide, come NumPy o pandas, questo viene scaricato al volo. Sono disponibili molti pacchetti in puro Python e scientifici.
- Input standard tramite
input()esys.stdin, alimentati dalla casella stdin. async/await: il codice viene eseguito conrunPythonAsync, quindi unawaital livello principale funziona.
Limiti da tenere presenti:
- Niente socket di rete. Moduli come
socket,urllib.requesterequestsnon possono aprire connessioni da qui. - Niente file persistenti. Puoi creare e leggere file con
open(), ma restano in memoria e vanno persi quando ricarichi la pagina o premi Interrompi. - I grafici non vengono mostrati. matplotlib si può importare, ma nessuna figura viene visualizzata, quindi stampa numeri o tabelle.
- Non è possibile installare pacchetti con codice nativo che Pyodide non include.
Guida rapida a 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!")
| Operazione | Sintassi |
|---|---|
| Stampare testo formattato | print(f"{x:.2f}") |
| Leggere una riga di input | name = input("Name? ") |
| Convertire l'input in un numero | n = int(input()) |
| List comprehension | [x * 2 for x in data if x > 0] |
| Ciclo su un dizionario | for k, v in d.items(): |
| Gestire un errore | try: ... except ValueError as e: ... |
Consigli
- Se il programma chiede input più volte di quante righe ci sono nella casella stdin, Python solleva
EOFError. Aggiungi una riga per ogni chiamata ainput(). - Le importazioni pesanti come pandas richiedono qualche secondo la prima volta. Il download rientra nel limite di tempo, quindi scegli 60 s per gli script impegnativi.
- Ogni esecuzione parte con variabili nuove, ma i moduli già importati restano caricati, quindi le esecuzioni ripetute sono veloci.
- Lavori con un output JSON? Incollalo nel formattatore JSON per formattarlo e validarlo.
Domande frequenti
È un vero interprete Python?
Sì. Pyodide è CPython 3.12 compilato in WebAssembly. Sintassi, funzioni integrate e libreria standard corrispondono a quelle del Python per desktop. Le differenze principali derivano dall'esecuzione nel browser: non c'è accesso alla rete né un file system permanente.
Posso usare NumPy e pandas?
Sì. Importali come al solito e verranno scaricati la prima volta che esegui il codice. Molti altri pacchetti scientifici e in puro Python forniti da Pyodide si caricano allo stesso modo.
Come passo l'input al mio programma?
Digita i valori nella casella stdin, una riga per ogni chiamata a input(), nell'ordine in cui il programma li chiede. Poi premi Esegui.
Perché il mio script si ferma dopo 15 secondi?
Il limite di tempo predefinito ti protegge dai cicli infiniti che bloccherebbero la scheda. Per calcoli più lunghi scegli 60 s nel menu del limite di tempo.
Posso eseguire anche altri linguaggi?
Sì. Prova il compilatore JavaScript online o sfoglia tutti gli strumenti per sviluppatori gratuiti.
Aggiornato