iducationducation
IndexArticlesFormationsProfilOutilsBibliothech
N°014 — 2026
Navigation
01Index02Articles03Formations04Profil05Outils06Bibliothech
N°014 — 2026
iducationducation
IndexArticlesFormationsProfilOutilsBibliothech
N°014 — 2026
Navigation
01Index02Articles03Formations04Profil05Outils06Bibliothech
N°014 — 2026
Formations
Python · Débutant

Python

Apprendre Python de zéro jusqu'au niveau expert : syntaxe, structures de données, POO, générateurs, décorateurs, typage, tests, async et internals du langage.

Python 3.13uvpytestmypyasyncio
01Introduction et installation02Variables et types de base03Conditions et boucles04Fonctions05Listes, tuples, dictionnaires et ensembles06Modules, fichiers et exceptions07Programmation orientée objet08Itérateurs, générateurs, décorateurs et context managers09Typage statique et tests10Concurrence : threads, processus et asyncio11Niveau expert : internals, métaprogrammation et performance
Chapitre 1·20 min

Introduction et installation

Python est un langage interprété, typé dynamiquement, créé par Guido van Rossum en 1991. Interprété veut dire qu'on n'a pas d'étape de compilation manuelle : on écrit un fichier .py, on le lance, il s'exécute. Typé dynamiquement veut dire qu'une variable n'a pas de type déclaré — c'est la valeur qui porte le type.

Si vous n'avez jamais programmé, l'article par où commencer pour apprendre à coder donne une vue d'ensemble avant de plonger ici.

Pourquoi Python

DomaineCe qu'on y fait avec Python
Scripts et automatisationRenommer 10 000 fichiers, parser des logs, piloter une API
Web backendDjango, FastAPI, Flask
Data sciencepandas, NumPy, Jupyter
IA / Machine learningPyTorch, scikit-learn, SDK des LLMs
DevOpsAnsible, outils CLI, scripts de déploiement

Son point faible : la vitesse brute. Une boucle Python pure est 10 à 100 fois plus lente que du C. En pratique, les bibliothèques lourdes (NumPy, PyTorch) sont écrites en C/C++ et Python sert de colle. On verra au chapitre 10 comment contourner ce problème quand il se pose.

Installer Python

Je recommande uv, un gestionnaire écrit en Rust qui installe Python, crée les environnements virtuels et gère les dépendances. Il remplace pip, venv, pyenv et pip-tools d'un coup.

# macOS / Linux
curl -LsSf https://astral.sh/uv/install.sh | sh
 
# Windows (PowerShell)
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

Puis :

uv python install 3.13
uv python list

Alternative classique : télécharger l'installeur sur python.org. Sur Windows, cochez Add python.exe to PATH.

Vérification :

python --version
Python 3.13.1

Le REPL : tester en direct

Tapez python sans argument. Vous obtenez une invite >>> où chaque ligne est exécutée immédiatement.

>>> 2 + 3
5
>>> "iducation".upper()
'IDUCATION'
>>> len([1, 2, 3])
3

Le REPL est l'outil le plus sous-estimé du débutant. Dès qu'on doute du comportement d'une fonction, on la teste ici en trois secondes. Quittez avec exit() ou Ctrl+D.

Premier script

Créez un fichier bonjour.py :

bonjour.py
nom = input("Ton prénom ? ")
print(f"Bonjour {nom}, bienvenue en Python.")
python bonjour.py

Trois notions dans deux lignes :

  • input() lit une ligne au clavier et renvoie toujours une chaîne
  • nom = ... crée une variable, sans mot-clé ni type
  • f"..." est une f-string : tout ce qui est entre {} est évalué

L'indentation fait partie de la syntaxe

Python n'utilise pas d'accolades pour délimiter les blocs. C'est l'indentation qui compte. Quatre espaces par niveau, c'est la convention (PEP 8).

age = 20
if age >= 18:
    print("Majeur")
    print("Accès autorisé")
print("Fin")  # hors du bloc if

Mélanger tabulations et espaces lève une TabError. Configurez votre éditeur pour insérer des espaces.

Environnement virtuel et projet

Chaque projet doit avoir ses propres dépendances, isolées du système. Avec uv :

uv init mon-projet
cd mon-projet
uv add requests
uv run main.py

Arborescence générée :

mon-projet/
├── .python-version
├── .venv/
├── main.py
├── pyproject.toml
└── uv.lock

pyproject.toml déclare les dépendances, uv.lock fige les versions exactes. Les deux se committent dans Git. Le dossier .venv/ non.

Sans uv, l'équivalent standard :

python -m venv .venv
source .venv/bin/activate      # Windows : .venv\Scripts\activate
pip install requests

Éditeur

VS Code avec l'extension Python (Microsoft) et Ruff pour le formatage et le lint. Ruff remplace Black, isort et Flake8, et s'exécute en quelques millisecondes.

uv add --dev ruff
uv run ruff check .
uv run ruff format .

Exercice

Écrivez age.py : demander l'année de naissance, afficher l'âge approximatif. Indice : input() renvoie une chaîne, il faudra la convertir avec int().

age.py
annee = int(input("Année de naissance ? "))
print(f"Tu as environ {2026 - annee} ans.")

Python est installé, vous savez lancer un script et isoler un projet. Le chapitre suivant attaque le cœur du langage : les variables et les types de base.

Suivant
Variables et types de base

Développeur fullstack passionné. J'apprends en construisant et je documente tout — front, back, outils. Le code s'apprend mieux en public.

Naviguer

IndexTous les articlesFormationsProfilOutilsBibliothech

Ailleurs

GitHub RSS

Newsletter

Les articles, libs et découvertes. Une fois par semaine, pas plus.

© 2026 William LoreeConçu & codé à la main