- Exécuteurs
-
Apprendre
Espace d’apprentissage Python Exemples exécutables, NumPy, pandas et plus Espace d’apprentissage C et C++ Pointeurs, mémoire, STL et C++ moderne Espace d’apprentissage C#Bases, POO, LINQ, async et exercices .NET Algorithmes Python Recherche, tri, récursivité et visualisations O(n) Algorithmes C et C++ Comparer les implémentations en C et C++
- Défis
Minimax est la façon dont les programmes de jeu choisissent leurs coups : supposez que les deux joueurs jouent parfaitement, notez chaque partie terminée et remontez les scores dans l'arbre de jeu. Le joueur au trait choisit l'enfant au meilleur score pour lui.
Le plateau est une chaîne de 9 caractères lue ligne par ligne (indices 0-8), avec "X", "O" ou "." pour une case vide. X joue toujours en premier : c'est donc à X de jouer quand les deux ont le même nombre de marques, et à O sinon.
Notez une partie terminée du point de vue du joueur au trait : +1 pour une victoire, 0 pour un match nul, -1 pour une défaite. Renvoyez la case vide dont le coup a le meilleur score minimax ; si plusieurs sont aussi bonnes, renvoyez le plus petit indice.
Implémentez best_move(board).
Entrée
board : Une position valide où personne n'a encore gagné et où au moins une case est vide.
Sortie
Renvoyez l'indice (0-8) du meilleur coup.
Contraintes
board contient exactement 9 caractères, chacun X, O ou .
La position peut apparaître dans une vraie partie, personne n'a gagné et au moins une case est vide
Exemples
Exemple 1
Entrée :
board = "XX.OO...."
Sortie attendue :
2
Explication
X et O ont deux marques chacun, donc X joue. Jouer en 2 complète la ligne du haut et gagne immédiatement (+1).
Exemple 2
Entrée :
board = "X..OO...X"
Sortie attendue :
5
Explication
X joue. O menace de compléter la ligne du milieu en 5. Tout autre coup laisse O gagner (-1), alors que bloquer en 5 mène à un match nul (0) : la réponse est donc 5.
Références
-
Exemple 1 Non exécutéEntrée :
board = "XX.OO...."Sortie attendue :2Votre sortie -
Exemple 2 Non exécutéEntrée :
board = "X..OO...X"Sortie attendue :5Votre sortie
4 tests cachés seront aussi exécutés lors de la soumission.
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.
🚀 4,279,692 exécutions totales (92 ce mois-ci)
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.
🐍 À 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.
- Sélectionnez une version et modifiez le fichier actuel, ou ouvrez un autre fichier de l’espace de travail.
- Exécutez le code, saisissez les données demandées dans le terminal et consultez l’historique des exécutions enregistrées.
- 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.
- Choisissez une version Python exécutée sur le serveur.
- Cliquez à côté d'un numéro de ligne pour ajouter un ou plusieurs points d'arrêt.
- Sélectionnez Déboguer pour lancer le programme et l'arrêter au premier point correspondant.
- Inspectez la ligne et les variables, puis utilisez Continuer, Pas à pas principal, Pas à pas détaillé ou Pas à pas sortant.
- 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.