Compilatore e debugger Python online

Scrivi, esegui e fai il debug di Python online. Usa breakpoint e comandi passo passo in modalità Server, senza installazione.

Librerie preinstallate
🚀 4,274,077 esecuzioni totali (777,786 questo mese)
Output

Esercitati in Python con le sfide di codice

Risolvi problemi pratici direttamente in questo editor: esegui i test di esempio, invia la soluzione e ricevi una revisione AI del codice.

Tutte le sfide Python
Facile

Average of Three

Average three whole numbers.

BeginnerLearning-pathVariables
Facile

Rectangle Perimeter

Compute the perimeter of a rectangle from its sides.

BeginnerLearning-pathVariables
Difficile

Ordine dei Corsi

Ordina i corsi in modo che ogni prerequisito venga prima.

AdvancedGraphsHackathonTopological-sort
Nessuna soluzione ancora
Media

Island Perimeter

Measure the coastline of land cells in a grid.

AdvancedGridsHackathon
Nessuna soluzione ancora
Media

K-th Smallest Element

Find the k-th smallest value without fully sorting.

AdvancedCompetitive-programmingSorting
Nessuna soluzione ancora
Difficile

Median of Two Sorted Arrays

Find the median of two sorted lists combined.

AdvancedBinary-searchCompetitive-programming
Nessuna soluzione ancora
Media

Game of Life Step

Advance Conway's Game of Life by one generation.

AdvancedGridsHackathonSimulation
Nessuna soluzione ancora
Difficile

Shortest Delivery Tour

Visit every city once and return home as cheaply as possible.

AdvancedBitmasksCompetitive-programmingDynamic-programming
Nessuna soluzione ancora
Difficile

Componenti Fortemente Connesse

Conta i gruppi di nodi che possono raggiungersi a vicenda.

AdvancedCompetitive-programmingGraphs
Nessuna soluzione ancora
Difficile

Longest Path in a DAG

Find the heaviest path in a task dependency graph.

AdvancedGraphsHackathonTopological-sort
Nessuna soluzione ancora
Difficile

Matrix Chain Multiplication

Find the cheapest order to multiply a chain of matrices.

AdvancedCompetitive-programmingDynamic-programming
Nessuna soluzione ancora
Difficile

Minimum Window Substring

Find the shortest piece of text containing all required characters.

AdvancedCompetitive-programmingSliding-windowStrings
Nessuna soluzione ancora

🐍 Informazioni su questo esecutore Python online

L’Esecutore Python di CodeUtility ti permette di scrivere, eseguire e testare codice Python direttamente nel browser - senza configurazioni o installazioni. È alimentato da una sandbox sicura che supporta versioni reali di Python dalla 3.10 alla 3.13.

Che tu stia imparando Python per la prima volta, testando brevi snippet o facendo debug della logica, questo strumento offre un ambiente di programmazione rapido e senza distrazioni. Puoi sperimentare liberamente e vedere l’output istantaneamente nella console integrata.

È ideale per principianti, studenti e sviluppatori che hanno bisogno di un IDE online leggero per esercitarsi con Python o per prototipare velocemente.

Più di un semplice esecutore di codice

Usa nello stesso esecutore un editor multifile, un terminale di esecuzione isolato, librerie specifiche per il runtime, spazi di lavoro persistenti, condivisione e collaborazione in tempo reale.

Come si usa questo esecutore?

Scegli un runtime, apri o crea un file, scrivi il codice e seleziona Esegui. L’output appare nel terminale; gli utenti che hanno effettuato l’accesso possono conservare i file in uno spazio di lavoro, installare librerie e collaborare tramite le condivisioni.

  1. Seleziona una versione e modifica il file corrente oppure apri un altro file dello spazio di lavoro.
  2. Esegui il codice, inserisci i dati nel terminale quando richiesto e consulta la cronologia delle esecuzioni salvate.
  3. Usa librerie, strumenti dello spazio di lavoro, condivisione e chat quando l’attività richiede più di un frammento di codice.

💡 Basi di Python ed esempi che puoi provare qui sopra

1. Dichiarare variabili e costanti

Python è tipizzato dinamicamente, quindi non devi dichiarare i tipi esplicitamente. Non esiste una parola chiave per le costanti, ma per convenzione le costanti si scrivono in MAIUSCOLO.

# Variabili
x = 10
pi = 3.14
name = "Alice"
is_active = True

# Costanti (per convenzione)
MAX_USERS = 100
APP_NAME = "CodeUtility"

# Le costanti possono comunque essere riassegnate (non è imposto)
MAX_USERS = 200  # ⚠️ Tecnicamente consentito, ma sconsigliato

2. Condizionali

Controlla il flusso con i blocchi if, elif e else. In Python 3.10+, puoi anche usare match-case come alternativa a switch-case.

# if-elif-else tradizionale
x = 2
if x == 1:
    print("Uno")
elif x == 2:
    print("Due")
else:
    print("Altro")

Alternativa: match-case (Python 3.10+)

# Richiede Python 3.10+
x = 2
match x:
    case 1:
        print("Uno")
    case 2:
        print("Due")
    case _:
        print("Altro")

3. Cicli

for si usa per iterare su sequenze, while esegue finché una condizione è vera.

for i in range(3):
    print(i)

count = 3
while count > 0:
    print(count)
    count -= 1

4. Liste

Le liste sono collezioni ordinate e mutabili. Puoi accedere agli elementi per indice.

fruits = ["apple", "banana"]
print(fruits[0])
print(len(fruits))

5. Manipolazione delle liste

Aggiungi, rimuovi, fai slice e inverti le liste. Le list comprehension consentono un’iterazione compatta.

fruits.append("cherry")
fruits.insert(1, "kiwi")
fruits.remove("banana")
fruits.pop()

print(fruits[1:3])
print(fruits[::-1])

squares = [x*x for x in range(5)]

6. Input/Output da console

Usa input() per leggere dall’utente e print() per mostrare l’output.

Puoi stampare più righe usando \n (carattere di nuova riga) o chiamando print() più volte.

# Leggi input
name = input("Inserisci il tuo nome: ")
print("Ciao", name)

# Stampa più righe
print("Riga 1\nRiga 2\nRiga 3")

# Oppure usa più chiamate a print
print("Riga A")
print("Riga B")
print("Riga C")

7. Funzioni

Le funzioni aiutano a organizzare il codice e a riutilizzarlo. Usa parametri e valori di ritorno.

def greet(name):
    return "Ciao " + name

print(greet("Alice"))

8. Dizionari

Memorizzano coppie chiave-valore. Le chiavi sono uniche e ai valori si accede tramite chiave.

person = {"name": "Bob", "age": 25}
print(person["name"])
print(person.get("email", "Non fornita"))

9. Gestione delle eccezioni

Usa try ed except per intercettare e gestire gli errori in modo elegante.

try:
    x = 1 / 0
except ZeroDivisionError:
    print("Impossibile dividere per zero")

10. I/O su file

Leggi e scrivi su file usando open().

with open("data.txt", "w") as f:
    f.write("Ciao mondo")

with open("data.txt", "r") as f:
    print(f.read())

11. Manipolazione delle stringhe

Le stringhe Python hanno metodi potenti come strip(), replace() e split().

text = "  Hello World  "
print(text.strip())
print(text.upper())
print(text.replace("Hello", "Hi"))
print(text.split())

12. Classi e oggetti

Definisci modelli riutilizzabili con le classi. Usa __init__ per inizializzare gli oggetti.

class Person:
    def __init__(self, name):
        self.name = name

    def greet(self):
        return "Ciao, sono " + self.name

p = Person("Alice")
print(p.greet())

🐞 Come eseguire il debug di Python online

Usa il debugger Python online per trovare errori logici senza installare Python o un IDE. Il debug usa un vero runtime Python 3.10–3.13 in modalità Server.

  1. Seleziona una versione Python eseguita sul server.
  2. Fai clic accanto a un numero di riga per impostare uno o più breakpoint.
  3. Seleziona Debug per avviare il programma e fermarlo al primo breakpoint corrispondente.
  4. Controlla la riga e le variabili, quindi usa Continua, Step Over, Step Into o Step Out.
  5. Seleziona Stop per terminare la sessione.

Inizia con un piccolo esempio riproducibile e imposta un breakpoint appena prima che il valore diventi inatteso. La modalità Server supporta anche file del workspace e librerie installate.