Skip to content

NDXDeveloper/formation-python

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

60 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🐍 Formation Python - Du Débutant à l'Avancé

Python Version License Modules Language Status

Formation complète Python 3, des fondamentaux jusqu'aux concepts avancés (FastAPI, Data Science, Type Hints).

Python Banner


📖 Table des matières


📋 À propos

Formation progressive et complète sur Python 3 couvrant l'intégralité du langage, des bases jusqu'aux techniques professionnelles les plus récentes. Conçue pour les débutants comme pour les développeurs expérimentés souhaitant se perfectionner.

✨ Points clés :

  • 📚 13 modules progressifs du niveau débutant à expert
  • 🎯 75+ sujets couverts avec exemples concrets
  • 🆕 Technologies modernes (FastAPI, Type Hints, Poetry, SQLAlchemy)
  • 📊 Module Data Science complet (NumPy, Pandas, Matplotlib)
  • 🔥 Édition 2025-2026 avec les dernières pratiques Python
  • 🇫🇷 100% en français et gratuit (MIT License)

Durée estimée : 40-60 heures • Niveau : Tous niveaux • Prérequis : Aucun


📚 Contenu de la formation

🎓 Modules Fondamentaux (1-4)

Module 1 : Fondamentaux - Installation, variables, structures de contrôle, fonctions, gestion des erreurs, Type Hints 🆕
Module 2 : Structures de données - Listes, dicts, sets, compréhensions, collections spécialisées
Module 3 : POO - Classes, héritage, polymorphisme, méthodes spéciales, métaclasses
Module 4 : Fichiers - Lecture/écriture, JSON/CSV/XML, sérialisation (pickle), pathlib

🚀 Modules Intermédiaires (5-8)

Module 5 : Programmation fonctionnelle - Lambda, map/filter/reduce, décorateurs, générateurs, closures
Module 6 : Modules - Packages, pip, venv, Poetry/Pipenv 🆕
Module 7 : Bibliothèques standard - os/sys, datetime, math/random, itertools, logging, typing avancé 🆕
Module 8 : Concurrence - Threading, multiprocessing, asyncio, patterns

🎯 Modules Avancés (9-13)

Module 9 : Débogage - Exceptions, debugging, profiling, optimisation
Module 10 : Tests - unittest, pytest, mocking, couverture de code, documentation, PEP 8, mypy 🆕
Module 11 : Web/APIs - FastAPI 🆕, Flask, REST, SQLAlchemy 🆕
Module 12 : Bonnes pratiques - Architecture, Git, design patterns, optimisation, déploiement
Module 13 : Data Science 📊 - NumPy, Pandas, Matplotlib/Plotly 🆕 (optionnel)

📋 Consultez SOMMAIRE.md pour la table des matières complète


🚀 Démarrage rapide

Installation de Python

# Vérifier la version de Python
python --version  # ou python3 --version

# Télécharger Python 3.10+ (recommandé : 3.13+)
# 🌐 https://www.python.org/downloads/

Configuration de l'environnement

# Cloner cette formation
git clone https://github.com/NDXDeveloper/formation-python.git  
cd formation-python  

# Créer un environnement virtuel
python -m venv venv

# Activer l'environnement
source venv/bin/activate      # 🐧 Linux/Mac
# venv\Scripts\activate       # 🪟 Windows

# Installer les dépendances avec pip
pip install fastapi uvicorn flask requests sqlalchemy pydantic  # Modules web  
pip install numpy pandas matplotlib plotly                       # Modules data science  

Alternative avec Poetry (recommandé)

# Installer Poetry (si pas encore installé)
pip install poetry

# Installer toutes les dépendances
poetry install --all-extras

# Ou seulement les dépendances web
poetry install -E web

# Ou seulement les dépendances data science
poetry install -E data

Votre premier programme

# 👋 hello.py
def saluer(nom: str) -> str:
    """Retourne un message de bienvenue personnalisé."""
    return f"Bonjour {nom}, bienvenue dans Python ! 🐍"

if __name__ == "__main__":
    print(saluer("Développeur"))
python hello.py
# Sortie : Bonjour Développeur, bienvenue dans Python ! 🐍

📁 Structure du projet

formation-python-complete/
├── 📄 README.md
├── 📋 SOMMAIRE.md (table des matières détaillée)
├── 🛠️ VSCODE-SETUP.md (configuration VS Code)
├── 📜 LICENSE
├── 📦 pyproject.toml (dépendances Poetry)
├── 📂 01-fondamentaux-et-syntaxe/
│   ├── README.md
│   ├── 01-installation-et-configuration.md
│   ├── 02-variables-types-et-operateurs.md
│   └── ...
├── 📂 02-structures-de-donnees/
├── 📂 03-programmation-orientee-objet/
├── 📂 04-gestion-donnees-et-fichiers/
├── 📂 05-programmation-fonctionnelle/
├── 📂 06-modules-et-packages/
├── 📂 07-bibliotheques-standard/
├── 📂 08-programmation-concurrente/
├── 📂 09-erreurs-et-debogage/
├── 📂 10-tests-et-qualite/
├── 📂 11-developpement-web-et-apis/
├── 📂 12-projets-et-bonnes-pratiques/
└── 📂 13-introduction-data-science/ (optionnel)

🎯 Comment utiliser cette formation

🌱 Débutant complet

👉 Commencez par le Module 1 et suivez l'ordre chronologique

🌿 Développeur intermédiaire

👉 Sautez au Module 5 ou Module 8

🌳 Développeur avancé

👉 Explorez les modules avancés : Module 11 (FastAPI) ou Module 13 (Data Science)

📚 Besoin d'une référence rapide

👉 Consultez le SOMMAIRE.md avec tous les liens

💡 Conseil : Créez un dossier d'entraînement et testez tous les exemples de code !

mkdir mon-apprentissage-python  
cd mon-apprentissage-python  
python -m venv venv  
source venv/bin/activate  

🗓️ Parcours suggéré

Niveau Modules Durée Objectif
🌱 Débutant 1-4 12-15h Maîtriser la syntaxe et les structures
🌿 Intermédiaire 5-8 15-20h POO, fonctionnel, concurrence
🌳 Avancé 9-12 15-20h Tests, web, APIs, bonnes pratiques
📊 Spécialisation 13 10-15h Data Science (optionnel)

🛠️ Technologies couvertes

Langage & Outils

Python Type Hints Poetry

Frameworks Web

FastAPI Flask

Données & ORM

SQLAlchemy Pandas NumPy

Tests & Qualité

pytest mypy

Visualisation

Matplotlib Plotly


🎓 Ce que vous apprendrez

✅ Écrire du code Python propre, maintenable et professionnel
✅ Maîtriser la POO et les design patterns
✅ Créer des APIs REST modernes avec FastAPI
✅ Gérer les bases de données avec SQLAlchemy
✅ Écrire des tests unitaires et assurer la qualité du code
✅ Utiliser le typage statique (Type Hints + mypy)
✅ Développer des applications asynchrones performantes
✅ Analyser des données avec NumPy et Pandas
✅ Créer des visualisations avec Matplotlib et Plotly
✅ Suivre les bonnes pratiques de l'industrie


💡 Exemple de code moderne

# Module 11 : FastAPI + Type Hints + SQLAlchemy
from fastapi import FastAPI, Depends, HTTPException  
from sqlalchemy.orm import Session  
from pydantic import BaseModel  

app = FastAPI()

class Utilisateur(BaseModel):
    id: int
    nom: str
    email: str

@app.get("/utilisateurs", response_model=list[Utilisateur])
async def obtenir_utilisateurs(db: Session = Depends(get_db)):
    """Récupère tous les utilisateurs de la base de données."""
    utilisateurs = db.query(UtilisateurModel).all()
    return utilisateurs

@app.post("/utilisateurs", response_model=Utilisateur, status_code=201)
async def creer_utilisateur(user: Utilisateur, db: Session = Depends(get_db)):
    """Crée un nouvel utilisateur avec validation Pydantic."""
    db_user = UtilisateurModel(**user.model_dump())
    db.add(db_user)
    db.commit()
    return db_user

❓ FAQ

Q : Dois-je avoir des connaissances préalables en programmation ? R : Non ! Le Module 1 commence vraiment à zéro. Si vous avez déjà programmé dans un autre langage, vous progresserez plus vite.

Q : Combien de temps faut-il pour terminer la formation ? R : Entre 40 et 60 heures selon votre rythme. Comptez 4-8 semaines à raison de 1-2h par jour.

Q : Le Module 13 (Data Science) est-il obligatoire ? R : Non, c'est un module optionnel pour ceux qui s'intéressent à l'analyse de données.

Q : Puis-je utiliser cette formation pour enseigner ? R : Oui ! La licence MIT vous permet d'utiliser, modifier et partager ce contenu librement.

Q : Quelle version de Python dois-je utiliser ? R : Python 3.10 ou supérieur est recommandé. Les exemples utilisent la syntaxe moderne (type hints natifs comme list[str], dict[str, int], match/case, etc.). Python 3.13+ est idéal pour bénéficier des dernières améliorations.


📚 Ressources complémentaires

Documentation officielle

Tutoriels et communautés

Outils recommandés


📝 Licence

Ce projet est sous licence MIT.

✅ Vous êtes libre d'utiliser, modifier, distribuer et utiliser commercialement ce contenu.

Voir le fichier LICENSE pour plus de détails.


👨‍💻 Auteur

Nicolas DEOUX


🙏 Remerciements

Merci à la communauté Python, aux créateurs de frameworks open source (FastAPI, Flask, Django), et à tous ceux qui rendent Python accessible et puissant ! 🎉

Ressources qui ont inspiré cette formation : Automate the Boring StuffPython Crash CourseFastAPI Documentation


🐍 Bon apprentissage avec Python ! 🐍

Python Love

⬆ Retour en haut

Dernière mise à jour : Mars 2026

About

Formation Python - Du débutant à l'avancé | 13 modules (FastAPI, Type Hints, Data Science, SQLAlchemy, asyncio) | 75+ sujets | MIT License

Topics

Resources

License

Stars

Watchers

Forks

Contributors

Languages