| exemples | ||
| .gitignore | ||
| LICENSE | ||
| prologin.py | ||
| README.md | ||
Bibliothèque Prologin - Tests Locaux 🚀
Cette bibliothèque Python permet de tester localement vos solutions pour les exercices d'entraînement et les concours du site Prologin.
🔗 Liens utiles
- Site officiel : prologin.org
- Exercices d'entraînement : prologin.org/train
- À propos du concours : prologin.org/about/contest
🏆 À propos de Prologin
Prologin est un concours national d'informatique gratuit destiné aux jeunes de moins de 21 ans. Il se déroule en trois étapes :
- Sélection en ligne : Résolution de problèmes d'algorithmique (QCM et code).
- Épreuves régionales : Écrit, machine et entretien pour les qualifiés.
- Finale : Hackathon de 36h à Paris où les participants codent une IA pour un jeu dédié.
Cette bibliothèque vous aide à vous préparer efficacement aux épreuves d'algorithmique (QCM et épreuves machine) en travaillant dans votre environnement local préféré.
✨ Fonctionnalités
- 📥 Simulation d'entrée : Remplace la fonction
input()native pour lire depuis un fichier. - 🤖 Automatisation : Exécute automatiquement votre solution sur plusieurs fichiers de test.
- ✅ Validation : Compare le résultat de votre fonction avec une réponse attendue définie dans le fichier de test.
⚙️ Installation
Il suffit de copier le fichier prologin.py dans le dossier de votre projet.
from prologin import input_file, Multiples_tests
📖 Utilisation
1. Test manuel
Vous pouvez charger un fichier de test. input() lira alors son contenu.
from prologin import input_file
# Charger le fichier (remplit l'entrée standard)
input_file('test_01.txt')
# Code standard (comme sur Prologin)
n = int(input())
# ...
print(n * 2)
2. Tests multiples automatisés
La méthode recommandée. La bibliothèque redirige automatiquement les entrées et capture vos print().
from prologin import Multiples_tests
def resoudre():
# Votre logique de résolution standard
# Utilisez input() et print() normalement !
n = int(input())
# ...
print(n * 2)
if __name__ == "__main__":
# Lance tous les tests correspondants automatiquement
Multiples_tests(resoudre)
📄 Format des fichiers de test
Pour que la bibliothèque puisse tester votre code, vos fichiers doivent respecter une structure simple.
1. Les données d'entrée
Écrivez les données que votre programme doit lire, une par ligne.
Si votre programme fait 3 fois input(), votre fichier doit avoir au moins 3 lignes de données.
2. La réponse attendue (Optionnel)
Pour que la bibliothèque vérifie si vous avez juste, vous pouvez ajouter la réponse attendue à la fin du fichier.
- Ajoutez une ligne qui commence par
#. - Écrivez la réponse après le
#. - Vous pouvez mettre des espaces après le
#si vous voulez.
Exemple simple (test_addition.txt) :
5
12
# 17
Ici, le programme lit 5 et 12, et doit trouver 17.
3. Cas des réponses multiples
Si votre fonction renvoie plusieurs résultats (un tuple), ajoutez simplement plusieurs lignes commençant par #.
Exemple multiple (test_calculs.txt) :
10
2
# 12
# 20
Ici, on attend 12 (somme) et 20 (produit).
🛠️ Convention de nommage
🛠️ Convention de nommage
Pour Multiples_tests, nommez vos fichiers de test avec le nom de votre script.
Si votre script s'appelle algorithme.py, les fichiers suivants seront détectés :
algorithme_test1.txtalgorithme_exemple.inalgorithme_secret.txt
⚖️ Licence
Ce projet est sous licence MIT. Voir le fichier LICENSE pour plus de détails.
Développé par Pascal Padilla.