CoursPython Quintard

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 7

Cours de Python en classe de 2nde et 1ère spé NSI

Table des matières


Cours de Python en classe de 2nde et 1ère spé NSI.............................................................................1
Cours de Python en classe de 2nde et 1ère spé NSI.............................................................................2
1. Introduction à Python...................................................................................................................2
2. Environnement de travail.............................................................................................................2
3. Bases de la programmation..........................................................................................................2
Variables et types........................................................................................................................ 2
Opérations de base......................................................................................................................3
4. Opérateurs principaux..................................................................................................................3
5. Structures de données..................................................................................................................4
6. Structures de contrôle..................................................................................................................4
Structure conditionnelle............................................................................................................. 4
Boucles........................................................................................................................................5
Fonctions..................................................................................................................................... 5
7. Bonnes pratiques..........................................................................................................................5
8. Pour aller plus loin....................................................................................................................... 6
Documentation et ressources en ligne.........................................................................................6
Éditeurs Python populaires........................................................................................................ 6
Fonctions lambda........................................................................................................................ 7
Compréhensions de listes............................................................................................................7
Programmation Orientée Objet (POO).......................................................................................7
Idées de projets............................................................................................................................7

NT/spé NSI - Programmer avec Python 2024-2025 – Quintard – page 1 / 7


Cours de Python en classe de 2nde et 1ère spé NSI

1. Introduction à Python
Python est un langage de programmation
interprété, ce qui signifie qu'il n'a pas besoin de
compilation. Le code est exécuté directement
par un interpréteur.

2. Environnement de travail
• Console : Interface textuelle pour
exécuter du code Python ligne par ligne. Éditeur python Thonny
• Interpréteur : Programme qui lit et
exécute le code Python.

3. Bases de la programmation
Variables et types
Une variable est un conteneur pour stocker des données. Chaque variable a un type qui
définit la nature de la donnée qu'elle contient (nombre, texte, etc.).
Voici les principaux types de variables:
• int (entier) : Nombres entiers, par exemple 5, -3, 1000.
• float (flottant) : Nombres décimaux, par exemple 3.14, -0.5, 2.0.
• str (chaîne de caractères) : Texte, par exemple "Bonjour", 'Python'.
• bool (booléen) : Valeurs logiques True ou False.
• list (liste) : Collection ordonnée d'éléments, par exemple [1, 2, 3].
• tuple : Collection ordonnée et immuable d'éléments, par exemple (1, 2, 3).
• dict (dictionnaire) : Collection de paires clé-valeur, par exemple {"nom": "Alice",
"age": 15}.
L'affectation est l'action d'attribuer une valeur à une variable :

1 age = 15 #affectation de la valeur 15 à la variable age

La fonction type() permet d’obtenir le type d’une variable:

1 age = 15
2 print(type(age)) #affiche le type int
3 age = "quinze"
4 print(type(age)) #affiche le type str

NT/spé NSI - Programmer avec Python 2024-2025 – Quintard – page 2 / 7


Opérations de base
• Concaténation : Combinaison de chaînes de caractères.

1 prenom = "Jean"
2 nom = "Dupont"
3 nom_complet = prenom + " " + nom #concaténation

• Incrémentation : Augmentation de la valeur d'une variable, souvent utilisée avec


un compteur.

1 compteur = 0
2 compteur = compteur + 1 #incrémentation

Ou sous forme "contractée" par l'usage d'un opérateur d'incrémentation :

1 compteur += 1 #équivaut à compteur = compteur + 1

4. Opérateurs principaux
Les opérateurs sont des symboles spéciaux qui permettent d'effectuer des opérations
sur des variables et des valeurs.
Opérateurs arithmétiques :
Addition : + Soustraction : - Multiplication : * Division : /
Division entière : // Modulo (reste de la division) : % Puissance : **

1 a = 10
2 b = 3
3 print(a // b) #Affiche 3
4 print(a % b) #Affiche 1

Opérateurs de comparaison :
Égal à : == Différent de : !=
Supérieur à : > Inférieur à : < Supérieur ou égal à : >= Inférieur ou égal à : <=

1 x = 5
2 y = 10
3 print(x == y) #Affiche False
4 print(x < y) #Affiche True

Opérateurs logiques :
ET : and OU : or NON : not

1 a = True
2 b = False
3 print(a and b) #Affiche False
4 print(a or b) #Affiche True
5 print(not a) #Affiche False

NT/spé NSI - Programmer avec Python 2024-2025 – Quintard – page 3 / 7


5. Structures de données
Les tuples, listes et dictionnaires sont en quelque sorte des variables auxquelles ont
peut affecter plusieurs valeurs. Plus précisément ce sont des collections de données.
On accède à une de leurs valeurs sous la forme objet[indice].
Les indices des listes et tuples en Python commencent à 0 pour le premier élément, et
vont jusqu'à n-1 pour une séquence de n éléments, permettant d'accéder à chaque
élément individuellement via sa position dans la structure.
• Tuple : Collection ordonnée et immuable d'éléments.

1 couleur = (255,0,0)
2 print(couleur[0]) #affiche 255

• Liste : Collection ordonnée et modifiable d'éléments.

1 fruits = ["banane","pomme","poire"]
2 print(fruits[0]) #affiche banane
3 fruits[2] = "citron"
4 print(fruits) #affiche ['banane', 'pomme', 'citron']
5 print(fruits[-1]) #affiche citron

• Dictionnaire : Collection de paires clé-valeur.

1 contact = {"nom":"Martin","prénom":"Pierre","age":45}
2 print(contact["prénom"]) #affiche Pierre

6. Structures de contrôle
Une structure de contrôle permet de modifier le flux d'exécution d'un programme en
déterminant quelles instructions seront exécutées et dans quel ordre, en fonction de
certaines conditions ou pour répéter des blocs de code.

Structure conditionnelle
• Permet d'exécuter du code en fonction de conditions :

1 age = 25
2 if age < 13:
3 print("Enfant")
4 elif age < 18:
5 print("Adolescent")
6 elif age < 60:
8 print("Adulte")
9 else:
10 print("Senior")
11 #affiche "Adulte"

NT/spé NSI - Programmer avec Python 2024-2025 – Quintard – page 4 / 7


Boucles
• Boucle bornée (for) : Pour répéter un bloc de code un nombre défini de fois.

1 #Afficher les carrés des nombres de 1 à 5


2 for i in range(1, 6):
3 carre = i ** 2
4 print(f"Le carré de {i} est {carre}")

• Boucle non bornée (while) : Pour répéter un bloc de code tant qu'une condition
est vraie.

1 #Compter jusqu'à ce que l'utilisateur entre 'stop'


2 compteur = 0
3
4 while True:
5 print(compteur)
6 compteur += 1
7 if compteur >= 10: #Arrête la boucle après 10 itérations
8 break

Fonctions
Une fonction est un bloc de code réutilisable qui effectue une tâche spécifique.
• Paramètre : Variable utilisée dans la définition d'une fonction.
• Argument : Valeur passée à une fonction lors de son appel.

1 def saluer(nom): #nom est un paramètre


2 print("Bonjour", nom)
3
4 saluer("Alice") #"Alice" est un argument

7. Bonnes pratiques

Indentation : En Python, l'indentation, c'est-à-dire le décalage des instructions vers la


droite avec une tabulation ou deux espaces, est cruciale car elle définit la structure du
code. Elle est utilisée pour délimiter les blocs dans les fonctions, les boucles, et les
structures conditionnelles.

Commentaires : Il est important d'ajouter des commentaires pour expliquer le code


complexe ou non évident. Les commentaires commencent par le symbole '#' et sont
ignorés lors de l'exécution du code.

1 #Calcul de la moyenne
2 moyenne = sum(notes) / len(notes)

NT/spé NSI - Programmer avec Python 2024-2025 – Quintard – page 5 / 7


Exemple de programme indenté, bien documenté et commenté.

1 def calculer_moyenne_notes(notes):
2 """
3 Calcule la moyenne des notes et retourne des informations.
4 Args:
5 notes (list): Liste des notes (nombres entre 0 et 20)
6 Returns:
7 dict: Dictionnaire contenant la moyenne, la note max et
8 min
9 """
10 if not notes:
11 return {"erreur": "Aucune note fournie"}
12
13 total = sum(notes)
14 nombre_notes = len(notes)
15 moyenne = round(total / nombre_notes, 2)
16
17 return {
18 "moyenne": moyenne,
19 "note_max": max(notes),
20 "note_min": min(notes)
21 }
22
23 #Exemple d'utilisation
24 resultat = calculer_moyenne_notes([12, 15, 8, 17, 14])
25 print(resultat)

8. Pour aller plus loin


Documentation et ressources en ligne

• Documentation officielle Python : La référence complète du langage.


• Docstring.fr : Une excellente ressource en français pour apprendre Python.
• Real Python : Tutoriels et articles approfondis sur Python (en anglais).
• https://pythonbasics.org : apprendre python à partir de ressources et tutoriels
• Mimo est une application éducative conçue pour enseigner la programmation,
notamment Python, JavaScript, HTML et CSS.

Éditeurs Python populaires

• PyCharm : Un IDE complet pour le développement Python.


• Visual Studio Code : Un éditeur de code léger et extensible avec support Python.
• Jupyter Notebook : Idéal pour l'analyse de données et l'apprentissage interactif.
• Thonny : Un IDE Python conçu pour les débutants.

NT/spé NSI - Programmer avec Python 2024-2025 – Quintard – page 6 / 7


Fonctions lambda

Une fonction lambda est une petite fonction anonyme qui peut avoir plusieurs
arguments mais ne peut avoir qu'une seule expression.
1 carre = lambda x: x**2
2 print(carre(5)) # Affiche 25
→ Pour approfondir : Fonctions lambda en Python

Compréhensions de listes

Il s'agit d'une syntaxe concise pour créer des listes basées sur des séquences ou d'autres
itérables (séquences répétitives).
1 carres = [x**2 for x in range(10)]
2 #Crée une liste des carrés de 0 à 9
→ Pour approfondir : Compréhensions de listes en Python

Programmation Orientée Objet (POO)

Il s'agit d'un paradigme de programmation (une manière de programmer qui décrit la


vue qu'a le développeur de l'exécution de son programme) basé sur le concept d'objets
contenant des données et du code.
1 class Chien:
2 def __init__(self, nom):
3 self.nom = nom
4 def aboyer(self):
5 return f"{self.nom} fait Wouf!"
6 mon_chien = Chien("Rex")
7 print(mon_chien.aboyer()) #Affiche : Rex fait Wouf!
→ Pour approfondir : La POO en Python

Idées de projets

Niveau débutant Niveau intermédiaire Niveau avancé

. Calculatrice simple . Jeu du pendu . Jeu de morpion avec IA


. Générateur de nombres . Générateur de mots de passe simple
aléatoires . To-do list avec sauvegarde . Gestionnaire de budget
. Calculateur d'IMC (indice de
dabs un fichier personnel
masse corporelle)
. Anylyseur de texte (compter . Chatbot classique
. Jeu du nombre mystère
les mots, phrases, etc) . Générateur de fractales

NT/spé NSI - Programmer avec Python 2024-2025 – Quintard – page 7 / 7

Vous aimerez peut-être aussi