Compilateur et débogueur Python en ligne

Écrivez, exécutez et déboguez Python en ligne. Utilisez les points d'arrêt et l'exécution pas à pas en mode Serveur, sans installation.

Bibliothèques préinstallées
🚀 4,279,640 exécutions totales (40 ce mois-ci)
Sortie

Pratiquez Python avec des défis de code

Résolvez des problèmes concrets dans cet éditeur : lancez les tests, soumettez et recevez une relecture IA.

Tous les défis Python
Facile

Average of Three

Average three whole numbers.

Vous apprendrez ArithmétiqueDivision
BeginnerLearning-pathVariables
Facile

Rectangle Perimeter

Compute the perimeter of a rectangle from its sides.

Vous apprendrez ArithmétiqueValeurs de retour
BeginnerLearning-pathVariables
Moyen

Une génération d'algorithme génétique

Produisez la génération suivante de chaînes de bits par sélection par tournoi, croisement en un point et mutation.

Vous apprendrez Algorithmes génétiquesRecherche évolutionnaire
OptimizationSimulationai
Aucune solution pour l’instant
Facile

Bandit manchot multi-bras epsilon-greedy

Équilibrez exploration et exploitation sur un bandit multi-bras avec une sélection d'action epsilon-greedy.

Vous apprendrez Exploration ou exploitationBandits
Apprentissage par renforcementaiapprentissage automatique
Aucune solution pour l’instant
Moyen

Itération sur les valeurs

Calculez la valeur de chaque état d'un processus de décision markovien en appliquant à répétition la mise à jour d'optimalité de Bellman.

Vous apprendrez Équation de BellmanMDP
Apprentissage par renforcementaiapprentissage automatique
Aucune solution pour l’instant
Moyen

Mises à jour du Q-learning

Appliquez la mise à jour du Q-learning à un flux d'expériences et regardez les récompenses remonter vers les états précédents.

Vous apprendrez Q-learningRécompenses actualisées
Apprentissage par renforcementaiapprentissage automatique
Aucune solution pour l’instant
Moyen

Élagage alpha-bêta

Évaluez un arbre de jeu avec minimax et l'élagage alpha-bêta, et comptez combien de feuilles la recherche examine vraiment.

Vous apprendrez Élagage alpha-bêtaRecherche dans les jeux
RecursionTreesai
Aucune solution pour l’instant
Moyen

Morpion avec minimax

Choisissez le coup parfait au morpion en explorant tout l'arbre de jeu avec minimax.

Vous apprendrez MinimaxArbres de jeu
Recursionai
Aucune solution pour l’instant
Moyen

Recherche A* sur une grille pondérée

Trouvez le chemin le moins coûteux à travers une grille de coûts de terrain avec A*, l'algorithme de recherche derrière le pathfinding des jeux et des robots.

Vous apprendrez Recherche A*Heuristiques
GraphsGridsShortest-pathai
Aucune solution pour l’instant
Moyen

Échantillonnage avec température et top-k

Choisissez le token suivant comme un modèle de langage : gardez les k logits les plus élevés, appliquez la température et échantillonnez.

Vous apprendrez Génération de texteÉchantillonnage
aiapprentissage automatique
Aucune solution pour l’instant
Difficile

Auto-attention multi-têtes

Projetez l'entrée en requêtes, clés et valeurs, exécutez l'attention dans plusieurs têtes en parallèle et combinez-les.

Vous apprendrez Attention multi-têtesProjections matricielles
aiapprentissage automatique
Aucune solution pour l’instant
Moyen

Normalisation de couche

Normalisez chaque ligne vers une moyenne 0 et une variance 1, puis mettez à l'échelle et décalez, comme le fait chaque bloc Transformer.

Vous apprendrez Normalisation de coucheTransformers
Réseaux de neuronesaiapprentissage automatique
Aucune solution pour l’instant

🐍 À propos de cet exécuteur Python en ligne

L’Exécuteur Python CodeUtility vous permet d’écrire, d’exécuter et de tester du code Python directement dans votre navigateur - aucune configuration ni installation requise. Il est propulsé par un bac à sable sécurisé qui prend en charge les versions officielles de Python de 3.10 à 3.13.

Que vous appreniez Python pour la première fois, testiez de petits extraits ou déboguiez de la logique, cet outil offre un environnement de codage rapide et sans distraction. Vous pouvez expérimenter librement et voir les résultats instantanément dans la console intégrée.

Idéal pour les débutants, les étudiants et les développeurs qui ont besoin d’un IDE Python en ligne léger pour s’exercer ou prototyper rapidement.

Bien plus qu’un exécuteur de code

Utilisez depuis le même exécuteur un éditeur multifichier, un terminal d’exécution isolé, des bibliothèques propres à chaque environnement, des espaces de travail persistants, le partage et la collaboration en temps réel.

Comment utiliser cet exécuteur ?

Choisissez un environnement d’exécution, ouvrez ou créez un fichier, écrivez votre code, puis sélectionnez Exécuter. La sortie s’affiche dans le terminal ; les utilisateurs connectés peuvent conserver leurs fichiers dans un espace de travail, installer des bibliothèques et collaborer grâce aux partages.

  1. Sélectionnez une version et modifiez le fichier actuel, ou ouvrez un autre fichier de l’espace de travail.
  2. Exécutez le code, saisissez les données demandées dans le terminal et consultez l’historique des exécutions enregistrées.
  3. Utilisez les bibliothèques, les outils de l’espace de travail, le partage et le chat lorsque votre tâche nécessite plusieurs extraits de code.

💡 Notions de base de Python et exemples à essayer ci-dessus

1. Déclarer des variables et des constantes

Python est typé dynamiquement, vous n’avez donc pas besoin de déclarer les types explicitement. Il n’y a pas de mot-clé constant intégré, mais par convention, les constantes s’écrivent en majuscules.

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

# Constantes (par convention)
MAX_USERS = 100
APP_NAME = "CodeUtility"

# Les constantes peuvent tout de même être réassignées (non imposé)
MAX_USERS = 200  # ⚠️ Techniquement autorisé, mais déconseillé

2. Conditions

Contrôlez la logique avec des blocs if, elif et else. En Python 3.10+, vous pouvez aussi utiliser match-case comme alternative à switch-case.

# if-elif-else traditionnel
x = 2
if x == 1:
    print("Un")
elif x == 2:
    print("Deux")
else:
    print("Autre")

Alternative : match-case (Python 3.10+)

# Nécessite Python 3.10+
x = 2
match x:
    case 1:
        print("Un")
    case 2:
        print("Deux")
    case _:
        print("Autre")

3. Boucles

for sert à itérer sur des séquences, while s’exécute tant qu’une condition est vraie.

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

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

4. Listes

Les listes sont des collections ordonnées et mutables. Vous pouvez accéder aux éléments par index.

fruits = ["pomme", "banane"]
print(fruits[0])
print(len(fruits))

5. Manipulation de listes

Ajoutez, supprimez, découpez et inversez des listes. Les compréhensions de liste permettent une itération compacte.

fruits.append("cerise")
fruits.insert(1, "kiwi")
fruits.remove("banane")
fruits.pop()

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

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

6. Entrée/sortie console

Utilisez input() pour lire des saisies utilisateur et print() pour afficher des sorties.

Vous pouvez afficher plusieurs lignes avec \n (caractère de saut de ligne) ou en appelant print() plusieurs fois.

# Lire une entrée
name = input("Entrez votre nom : ")
print("Bonjour", name)

# Afficher plusieurs lignes
print("Ligne 1\nLigne 2\nLigne 3")

# Ou utiliser plusieurs appels à print
print("Ligne A")
print("Ligne B")
print("Ligne C")

7. Fonctions

Les fonctions aident à organiser le code et favorisent la réutilisation. Utilisez des paramètres et des valeurs de retour.

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

print(greet("Alice"))

8. Dictionnaires

Stockez des paires clé‑valeur. Les clés sont uniques et les valeurs sont accessibles via les clés.

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

9. Gestion des exceptions

Utilisez try et except pour intercepter et gérer les erreurs proprement.

try:
    x = 1 / 0
except ZeroDivisionError:
    print("Division par zéro impossible")

10. Entrée/sortie fichier

Lisez et écrivez dans des fichiers avec open().

with open("data.txt", "w") as f:
    f.write("Bonjour le monde")

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

11. Manipulation de chaînes

Les chaînes Python proposent des méthodes puissantes comme strip(), replace() et split().

text = "  Bonjour le monde  "
print(text.strip())
print(text.upper())
print(text.replace("Bonjour", "Salut"))
print(text.split())

12. Classes et objets

Définissez des modèles réutilisables avec des classes. Utilisez __init__ pour initialiser les objets.

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

    def greet(self):
        return "Salut, je suis " + self.name

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

🐞 Comment déboguer du code Python en ligne

Le débogueur Python en ligne permet de trouver les erreurs de logique sans installer Python ni un IDE. Il utilise un véritable environnement Python 3.10 à 3.13 en mode Serveur.

  1. Choisissez une version Python exécutée sur le serveur.
  2. Cliquez à côté d'un numéro de ligne pour ajouter un ou plusieurs points d'arrêt.
  3. Sélectionnez Déboguer pour lancer le programme et l'arrêter au premier point correspondant.
  4. Inspectez la ligne et les variables, puis utilisez Continuer, Pas à pas principal, Pas à pas détaillé ou Pas à pas sortant.
  5. Sélectionnez Arrêter pour terminer la session.

Commencez par un exemple minimal reproductible et placez un point d'arrêt juste avant la valeur inattendue. Le mode Serveur peut aussi utiliser les fichiers du workspace et les bibliothèques installées.