Skip to main content

Système interactif de 100 exercices pour apprendre Python

Project description

README.md

🎓 EduCode - Apprendre Python par la pratique

EduCode est un système interactif de 100 exercices progressifs pour apprendre Python, avec correction automatique et suivi de progression.

✨ Fonctionnalités

  • 100 exercices progressifs répartis en 3 niveaux (facile, moyen, difficile)
  • Correction automatique avec tests unitaires intégrés
  • Suivi de progression personnel sauvegardé localement
  • Exercices par catégorie et par difficulté
  • Indices et templates pour vous aider
  • Mode hors-ligne - fonctionne sans internet

🚀 Installation

pip install educode

💻 Utilisation

Mode interactif (recommandé)

python -m educode

Commandes disponibles

python -m educode stats    # Voir vos statistiques
python -m educode help     # Aide
python -m educode version  # Version

📚 Catégories d'exercices

🟢 Niveau Facile (40 exercices)

  • Fonctions basiques : carré, maximum, calculatrice...
  • Chaînes de caractères : palindromes, comptage, formatage...
  • Listes basiques : somme, min/max, recherche...
  • Boucles et conditions : factorielle, fibonacci, tables...

🟡 Niveau Moyen (40 exercices)

  • Listes et algorithmes : tri, recherche, permutations...
  • Dictionnaires : fréquences, fusion, filtrage...
  • Chaînes avancées : anagrammes, compression, regex...

🔴 Niveau Difficile (20 exercices)

  • Algorithmes complexes : QuickSort, Dijkstra, N-Reines...
  • Structures de données : arbres, graphes, tables de hachage...

🎯 Exemple d'utilisation

🎓 Bienvenue dans EduCode !

🎯 Que souhaitez-vous faire ?
1. Exercice aléatoire
2. Exercice par difficulté  
3. Exercice par catégorie
4. Voir mes statistiques
5. Continuer où j'en étais
6. Quitter

👉 Votre choix (1-6): 1

🎓 Exercice: Fonction carré
📚 Catégorie: Fonctions basiques  
🔥 Difficulté: FACILE
==================================================
Écrivez une fonction `carre(n)` qui retourne le carré d'un nombre.

📝 Écrivez votre solution:
>>> def carre(n):
...     return n * n
... 

🧪 Exécution de 4 tests...
  ✅ Test 1: carre(2) = 4
  ✅ Test 2: carre(0) = 0  
  ✅ Test 3: carre(-3) = 9
  ✅ Test 4: carre(10) = 100

📊 Résultat: 4/4 tests réussis
🎉 Félicitations ! Exercice réussi !

📊 Suivi de progression

EduCode sauvegarde automatiquement votre progression dans ~/.educode_progress.json :

  • ✅ Exercices réussis
  • ❌ Exercices échoués
  • 📈 Statistiques détaillées
  • 🎯 Taux de réussite

🛠 Développement

Structure du projet

educode/
├── __init__.py          # Point d'entrée du module
├── __main__.py          # Exécution python -m educode  
├── core.py              # Logique principale
└── exercises.py         # Base de données des 100 exercices

Contribuer

  1. Forkez le projet
  2. Créez votre branche (git checkout -b feature/nouvelle-fonctionnalite)
  3. Committez (git commit -am 'Ajout nouvelle fonctionnalité')
  4. Pushez (git push origin feature/nouvelle-fonctionnalite)
  5. Ouvrez une Pull Request

📝 Licence

MIT License - voir le fichier LICENSE pour plus de détails.

🤝 Support

🏆 Pourquoi EduCode ?

  • Pratique immédiate - Pas de théorie, que de la pratique
  • Progression guidée - Du plus simple au plus complexe
  • Correction instantanée - Sachez immédiatement si c'est bon
  • Hors ligne - Apprenez n'importe où, sans connexion
  • Suivi personnel - Voyez votre évolution
  • Open Source - Gratuit et améliorable par tous

Commencez dès maintenant :

pip install educode && python -m educode

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

educode-1.0.0.tar.gz (23.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

educode-1.0.0-py3-none-any.whl (22.9 kB view details)

Uploaded Python 3

File details

Details for the file educode-1.0.0.tar.gz.

File metadata

  • Download URL: educode-1.0.0.tar.gz
  • Upload date:
  • Size: 23.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.0

File hashes

Hashes for educode-1.0.0.tar.gz
Algorithm Hash digest
SHA256 d4e73a342c060c89b2d90e3e6ba32be28d940857904cca470162d29601844fbd
MD5 0ee71b914ade624a6e3016570f47dd9a
BLAKE2b-256 f39192f3b236b5c7869b82d9e6c3ea996595c67a3d1442f3604b9574db899c8b

See more details on using hashes here.

File details

Details for the file educode-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: educode-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 22.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.0

File hashes

Hashes for educode-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 dd8cb01049a44ff46bd923c70efd29a9abdc751236ede336179a4ca3523ee59b
MD5 55056155e4b3ee708a92a6088f59d9ff
BLAKE2b-256 60492f71c572fa25d0d03234b4fa2cb594f55fc0f9f085e7e361727af5435dd4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page