Aller au contenu
Réussir mon BTS SIO

Tape une notion, une commande ou le nom d'une épreuve.

Par exemple

19 chapitres5 h 50 minDébutant

Python

Cours Python gratuit pour le BTS SIO, sur Python 3.15 : bases, CSV et JSON, scripts d'administration, réseau, API, pytest, E3 et exercices corrigés.

Par Josselyn C., prof de BTS SIO. Mis à jour le .

L'essentiel

Ce cours Python pour le BTS SIO t'apprend le langage de programmation le plus utilisé pour automatiser : écrire un script qui lit un fichier CSV, interroge une API, analyse un journal, vérifie un réseau ou un inventaire, et dit par son code de retour s'il a réussi. Python sert dans les deux options : le référentiel le recommande pour l'épreuve E3 « Mathématiques pour l'informatique », un technicien SISR s'en sert pour les traitements que PowerShell et Bash font mal, et un développeur SLAM pour les outils qui entourent ses applications. Le cours part de zéro et va jusqu'aux scripts d'administration complets, testés avec pytest.

À la fin de ce cours, tu sauras :

  • installer Python, gérer ses paquets dans un environnement virtuel avec pip ou uv, et lancer un script ;
  • écrire un programme clair avec des variables, des conditions, des boucles, des fonctions et des modules ;
  • choisir la bonne structure de données (liste, dictionnaire, ensemble, dataclass) et lire ou écrire des fichiers CSV et JSON ;
  • écrire un vrai script d'administration : options, journal, gestion des erreurs, code de retour, planification ;
  • analyser des journaux avec les expressions régulières, tester un réseau et appeler une API REST ;
  • tester ton code avec pytest et programmer les algorithmes de l'épreuve E3.

Prérequis. Aucun pour les chapitres 1 à 8 : on part de l'installation. Si tu n'as jamais programmé, le cours Algorithmique présente les mêmes notions de base pas à pas, en pseudo-code puis en Python. Les chapitres 9 à 12 et 17 supposent de savoir utiliser un terminal et ce qu'est une adresse IP (cours Réseaux) ; les chapitres 13 et 18, de savoir ce qu'est une API (cours API REST).

Les versions du cours. Les programmes sont écrits pour Python 3.15, sorti le 9 octobre 2026 (version 3.15.2), et fonctionnent avec Python 3.13, celui de Debian 13, sauf quand un encadré signale une nouveauté. Les paquets cités sont dans leur version de novembre 2026 : uv 0.13.7, requests 2.34.2, pytest 9.2.0. Chaque résultat affiché vient d'une exécution réelle du programme avec Python 3.15.2, dans un dossier cours-python ; pour le labo de Sorbier, les réponses du réseau ont été reproduites sur une machine de test, et les exemples GSB tournent contre l'API de démonstration que tu peux télécharger au chapitre 13.

Le fil rouge. Les exemples d'administration se passent chez Sorbier Logistique, la PME de logistique de 14 salariés des cours Scripts PowerShell et Bash et pfSense : son annuaire ad.sorbier.example, ses VLAN (les serveurs dans 192.168.10.176/28, les applications dans le VLAN 21 192.168.21.0/24), son serveur de journaux srv-journaux sous Debian 13 et son serveur web srv-web. Les exemples de développement reprennent l'API des fiches de frais GSB du cours API REST et la base parc du cours SQL.

Comment travailler. Installe Python et Visual Studio Code (chapitre 1), crée un dossier de travail avec son environnement virtuel (chapitre 2), puis tape chaque programme toi-même au lieu de le copier : c'est en corrigeant tes fautes de frappe que tu apprends à lire les messages d'erreur. Compare ce que tu obtiens avec la sortie affichée. Chaque chapitre se termine par des exercices dont la réponse est masquée : cherche d'abord, ouvre ensuite.

Ton objectifChapitres à travailler en priorité
Découvrir Python1 à 8, dans l'ordre
Préparer l'épreuve E3 (algorithmique)3 à 6, 8, 15 et 16, avec le cours Algorithmique
Automatiser l'administration (SISR)1 à 3, 7 à 12 et 17
Outiller un projet de développement (SLAM)2, 7, 8, 13 à 15 et 18
Réviser vite19

Sommaire

0%

Python

0 chapitre sur 19

  1. Chapitre 1 : C'est quoi Python ? Installer Python et lancer un script14 min
  2. Chapitre 2 : Environnement virtuel, pip et uv : installer des paquets16 min
  3. Chapitre 3 : Les bases de Python : variables, types, conditions et boucles20 min
  4. Chapitre 4 : Fonctions, modules et import en Python15 min
  5. Chapitre 5 : Chaînes, listes et tuples en Python18 min
  6. Chapitre 6 : Dictionnaires, ensembles et compréhensions19 min
  7. Chapitre 7 : Lire et écrire des fichiers : pathlib, CSV et JSON19 min
  8. Chapitre 8 : Erreurs et exceptions : lire un traceback, try et except20 min
  9. Chapitre 9 : La bibliothèque standard pour l'admin : os, shutil, subprocess, datetime19 min
  10. Chapitre 10 : Un script d'administration propre : argparse, logging et planification19 min
  11. Chapitre 11 : Expressions régulières et analyse de logs avec re19 min
  12. Chapitre 12 : Python et le réseau : ipaddress, ping et socket20 min
  13. Chapitre 13 : Appeler une API REST en Python : urllib et requests19 min
  14. Chapitre 14 : Classes et dataclasses en Python (POO)18 min
  15. Chapitre 15 : Tester son code Python avec pytest15 min
  16. Chapitre 16 : Python pour l'épreuve E3 : bases, PGCD, matrices et graphes23 min
  17. Chapitre 17 : Scripts Python pour l'administration système (SISR)25 min
  18. Chapitre 18 : Python pour le développeur SLAM : client d'API et SQLite23 min
  19. Chapitre 19 : Aide-mémoire Python9 min
Commencer le cours

Questions fréquentes

C'est quoi Python et à quoi ça sert ?

Python est un langage de programmation libre, gratuit et multiplateforme, réputé pour sa syntaxe lisible. On s'en sert pour automatiser des tâches d'administration, écrire le back-end d'applications web et d'API, tester du code, traiter des données et développer des outils d'intelligence artificielle. Au BTS SIO, il sert aussi bien à l'épreuve E3 qu'aux scripts d'un technicien SISR ou aux outils d'un développeur SLAM (C'est quoi Python ?).

Python est-il au programme du BTS SIO ?

Oui, de deux façons. Aucun langage n'est imposé pour la programmation de l'épreuve E3 « Mathématiques pour l'informatique », mais la plupart des sections la font en Python ; et les scripts d'automatisation font partie des compétences du bloc 1, communes aux deux options, puis de l'option SISR. Aucun langage de script n'est imposé, mais Python est le plus répandu pour ces usages (Python pour l'épreuve E3).

Quelle version de Python installer en 2026 ?

La dernière version stable, Python 3.15 (3.15.2 au 25 octobre 2026), téléchargée sur python.org : sous Windows, avec le gestionnaire d'installation et la commande py install 3.15. Sur un serveur Debian 13, garde le Python 3.13 du système et installe une autre version à côté si un projet l'exige, avec uv par exemple. Python 2 n'est plus maintenu depuis 2020 (les versions de Python).

Python ou PowerShell : lequel apprendre pour l'option SISR ?

Les deux, pour des usages différents. PowerShell est l'outil natif de Windows et le seul à disposer des modules officiels pour Active Directory et Microsoft 365 ; Python est meilleur pour traiter des données (CSV, JSON, journaux), appeler des API et écrire des scripts qui tournent sur Linux comme sur Windows. Un bon réflexe : PowerShell pour agir sur l'annuaire, Python pour préparer et contrôler les données (Python, PowerShell ou Bash ?).

Comment installer une bibliothèque Python ?

Crée un environnement virtuel dans le dossier du projet (python -m venv .venv), active-le, puis installe le paquet avec python -m pip install nom-du-paquet. Sur Debian et Ubuntu, pip install hors environnement virtuel est refusé avec l'erreur externally-managed-environment, pour protéger le Python du système. uv fait tout en une commande dans un projet : uv add nom-du-paquet (environnement virtuel, pip et uv).

Quelle est la différence entre une liste, un tuple et un dictionnaire ?

Une liste ([1, 2, 3]) est une suite ordonnée et modifiable, pour une collection qui change. Un tuple ((1, 2, 3)) est une suite non modifiable, pour quelques valeurs qui vont ensemble. Un dictionnaire ({"srv-ad": "192.168.10.177"}) associe des clés uniques à des valeurs, pour retrouver une information à partir d'un nom (choisir la bonne structure).

Faut-il connaître Python pour l'épreuve E3 ?

Aucun langage n'est imposé, mais Python est celui que la plupart des établissements enseignent. En contrôle en cours de formation, une situation d'évaluation te fait écrire un algorithme sur table, le programmer sur machine puis le présenter à l'oral ; en forme ponctuelle, un exercice de l'écrit évalue la capacité à programmer. Entraîne-toi sur les sujets corrigés du cours Algorithmique et sur le sujet type de ce cours.

Comment lire un fichier CSV en Python ?

Ouvre-le avec open(chemin, encoding="utf-8-sig", newline="") et passe-le à csv.DictReader(f, delimiter=";") : chaque ligne devient un dictionnaire dont les clés sont les noms de colonnes. L'encodage utf-8-sig retire la marque invisible (BOM) qu'Excel ajoute en tête de fichier, et le point-virgule est le séparateur des tableurs français. Les valeurs lues sont toujours des chaînes, à convertir avant tout calcul (lire un CSV avec DictReader).