← Retour aux ressources
Sciences numériques et technologie (SNT) · Classe de 2ⁿᵈᵉ

Programmation en Python

Découvrir les bases de la programmation en Python dans le cadre du thème « La programmation » du programme SNT 2nde

À propos de cette page
Ce cours de sciences numériques et technologie (snt) en seconde sur « Programmation en Python » suit le programme officiel de sciences numériques et technologie (snt) de seconde. Il présente les définitions, les propriétés et les méthodes essentielles, accompagnées d'exemples résolus pour bien comprendre. Au programme : Qu'est-ce qu'un programme ?, Variables et types de données, Instructions conditionnelles, Les boucles. Chaque notion est expliquée pas à pas, puis mise en pratique grâce à des exercices interactifs, un QCM et une évaluation corrigée. Idéal pour réviser à son rythme, combler ses lacunes et progresser, en autonomie ou avec un professeur. Cours rédigé par un professeur particulier à Marseille pour aider les élèves de seconde à réussir en sciences numériques et technologie (snt).
Au programme
1 · Qu'est-ce qu'un programme ?
2 · Variables et types de données
3 · Instructions conditionnelles
4 · Les boucles
5 · Les fonctions
6 · Les listes
7 · Algorithmes classiques
1Qu'est-ce qu'un programme ?

Un programme informatique est une suite d'instructions écrites dans un langage que la machine peut exécuter. Python est un langage de haut niveau : ses instructions se rapprochent du langage humain et sont traduites en langage machine automatiquement.

Définition. Un algorithme est une suite finie et ordonnée d'instructions permettant de résoudre un problème. Un programme est la traduction d'un algorithme dans un langage de programmation.

En SNT, on utilise Python (version 3), disponible en ligne sur basthon.fr ou installable depuis python.org. On écrit le code dans un éditeur ou un notebook Jupyter.

Exemple. Le programme le plus simple :
print("Bonjour le monde !")
Cette instruction affiche le texte entre guillemets dans la console.

Du problème à la solution : les étapes de la programmation

Astuce. En Python, l'indentation (décalage par des espaces) est obligatoire pour délimiter les blocs de code. On utilise 4 espaces ou une tabulation.
2Variables et types de données

Une variable est un nom associé à une valeur stockée en mémoire. En Python, on crée une variable par affectation avec le symbole =.

Définition. L'instruction x = 5 crée une variable nommée x contenant la valeur entière 5. Python détermine automatiquement le type de la variable.
TypeMot-clé PythonExempleDescription
Entierintage = 16Nombre entier (positif ou négatif)
Flottantfloatnote = 14.5Nombre décimal
Chaînestrprenom = "Alice"Texte entre guillemets
Booléenboolmajeur = TrueTrue ou False
Exemple.
prenom = "Alice"
age = 17
taille = 1.65
print(prenom, "a", age, "ans")
Affiche : Alice a 17 ans
Astuce. La fonction type(x) renvoie le type d'une variable. La fonction int("42") convertit une chaîne en entier.
Attention ! Ne pas confondre = (affectation) et == (comparaison). Écrire x = 5 affecte 5 à x ; x == 5 teste si x vaut 5.
3Instructions conditionnelles

Les structures conditionnelles permettent au programme d'exécuter différentes instructions selon qu'une condition est vraie ou fausse. En Python, on utilise if, elif et else.

Syntaxe.
if condition:
    instruction_si_vrai
elif autre_condition:
    instruction_sinon_si
else:
    instruction_sinon
Le bloc indenté n'est exécuté que si la condition est vérifiée.

Les opérateurs de comparaison sont : == (égal), != (différent), <, >, <=, >=. Les opérateurs logiques sont and, or, not.

Exemple.
note = 12
if note >= 10:
    print("Admis")
elif note >= 8:
    print("Rattrapage")
else:
    print("Ajourné")

Enchaînement des blocs conditionnels en Python

Attention ! Le deux-points : en fin de ligne est obligatoire après if, elif et else. L'indentation est obligatoire dans le bloc.
4Les boucles

Une boucle permet de répéter plusieurs fois un bloc d'instructions. Python propose deux types de boucles : for et while.

Boucle for. Répète un bloc pour chaque élément d'une séquence :
for i in range(5):
    print(i)
Affiche 0, 1, 2, 3, 4. La fonction range(n) génère les entiers de 0 à n−1.
Boucle while. Répète un bloc tant qu'une condition est vraie :
compteur = 0
while compteur < 5:
    print(compteur)
    compteur = compteur + 1
BoucleQuand l'utiliserRisque
forNombre d'itérations connuAucun
whileCondition d'arrêt dynamiqueBoucle infinie si condition toujours vraie
Exemple. Calcul de la somme des entiers de 1 à 10 :
total = 0
for i in range(1, 11):
    total = total + i
print(total)55
Attention ! range(1, 11) génère les entiers de 1 à 10 (la borne supérieure est exclue). range(10) génère de 0 à 9.
5Les fonctions

Une fonction est un bloc de code nommé et réutilisable. Elle peut recevoir des paramètres (entrées) et retourner une valeur (sortie) avec return.

Syntaxe.
def nom_fonction(parametre1, parametre2):
    # corps de la fonction
    return resultat
On appelle la fonction avec : nom_fonction(valeur1, valeur2)
Exemple.
def perimetre_rectangle(longueur, largeur):
    p = 2 * (longueur + largeur)
    return p

print(perimetre_rectangle(5, 3))16

Les fonctions permettent de décomposer un problème en sous-problèmes, d'éviter les répétitions et de rendre le code plus lisible.

Astuce. Python fournit des fonctions prédéfinies très utiles : print(), input(), len(), int(), float(), str(), range(), abs(), max(), min().
Attention ! Une variable définie à l'intérieur d'une fonction (variable locale) n'existe pas en dehors. Le return arrête l'exécution de la fonction.
6Les listes

Une liste est une structure de données qui permet de stocker plusieurs valeurs dans une même variable. Les éléments sont séparés par des virgules et entourés de crochets.

Définition.
notes = [12, 15, 8, 17, 10]
Les éléments sont numérotés à partir de 0 : notes[0] vaut 12, notes[4] vaut 10.
La longueur s'obtient avec len(notes) → 5.
OpérationSyntaxeRésultat
Accèsnotes[2]8 (3e élément)
Modificationnotes[0] = 14Remplace 12 par 14
Ajoutnotes.append(11)Ajoute 11 à la fin
Longueurlen(notes)Nombre d'éléments
Tranchenotes[1:3][15, 8] (indices 1 et 2)
Exemple. Calcul de la moyenne d'une liste de notes :
notes = [12, 15, 8, 17, 10]
total = 0
for n in notes:
    total = total + n
moyenne = total / len(notes)
print(moyenne)12.4

Visualisation d'une liste de notes avec un graphique en barres

7Algorithmes classiques

La SNT introduit quelques algorithmes fondamentaux que l'on rencontre fréquemment en programmation.

Recherche d'un maximum. Parcourir une liste et mémoriser le plus grand élément :
def maximum(liste):
    maxi = liste[0]
    for val in liste:
        if val > maxi:
            maxi = val
    return maxi
Tri par sélection (principe). Répéter n fois : trouver le minimum du reste de la liste et le placer à sa position. Complexité $O(n^2)$ (n étant la taille de la liste).
Algorithme de parcours. Compter les éléments vérifiant une condition :
def compter_admis(notes):
    compteur = 0
    for n in notes:
        if n >= 10:
            compteur = compteur + 1
    return compteur
Astuce. En Python, la fonction sorted(liste) trie une liste et max(liste), min(liste), sum(liste) calculent directement le maximum, le minimum et la somme.
À retenir
En bref :
• Un programme est la traduction d'un algorithme dans un langage de programmation (ici Python).
• Une variable est un nom associé à une valeur ; les types principaux sont int, float, str, bool.
• Les structures conditionnelles (if/elif/else) exécutent des instructions selon une condition.
• Les boucles for (séquence connue) et while (condition dynamique) répètent des instructions.
• Une fonction est un bloc de code nommé, réutilisable, avec def et return.
• Une liste stocke plusieurs valeurs indexées à partir de 0 ; on la parcourt avec for elem in liste.
• Les algorithmes de parcours, de recherche de maximum et de tri sont des fondamentaux à connaître.
Continuer ce chapitre
Autres chapitres
Bloqué sur ce chapitre ?

Cours particuliers de sciences numériques et technologie (snt) à Marseille, en présentiel ou à distance — un prof qui s'adapte à ton rythme et reprend ce qui coince.

Réserver un 1er cours → Voir les tarifs