Vous êtes sur la page 1sur 7

2nde … - Nom Prénom : ……………………………. SNT0.

Démarrer avec le numérique – Activité 4 page 1/7

Activité 4 : Initiation à la programmation en Python

Python, c’est quoi ?


Python est un langage de programmation sous licence libre mis au point par Guido van Rossum au tout début des
années 90.
Ce langage connaît un fort développement car son caractère ouvert permet à chacun de contribuer au code et de créer
de nouvelles bibliothèques qui enrichissent le langage.
Le langage Python fonctionne sur la plupart des plateformes informatiques (notamment Linux, Windows et macOS).

Comment utiliser Python ?


Il existe des applications appelées IDE (environnement de développement) permettant de programmer en python.
Ces applications intègrent :
- Un éditeur de texte (pour écrire le programme)
- Un interpréteur appelé console repéré par 3 chevrons >>> (pour exécuter le programme de l’éditeur de
texte ou directement des codes courts)
- Un débogueur (pour tester le programme).
Nous utiliserons l’IDE EduPython (voir suite MCNL Lycée -> Math -> Python).

On exécute ici le programme

Editeur de texte :
On écrit le programme ici

Interpréteur python (console)


Le résultat apparait ici

Syntaxe de Python

L’affectation Opérateurs de base Comparaison


Le signe = sert à affecter une valeur Symbole Effet Symbole Signification
à une variable + addition Strictement
<
Syntaxe Type de variable - soustraction inférieur

int Nombre entier * multiplication strictement


>
supérieur
float Nombre à virgule / division
<= inférieur ou égal
str Chaîne de caractère ** élévation à la puissance
>= supérieur ou égal
list Liste de longueur variable // division Euclidienne
== égal
reste de la division
%
Euclidienne != différent
2nde … - Nom Prénom : ……………………………. SNT0. Démarrer avec le numérique – Activité 4 page 2/7

Utiliser quelques instructions de base en python - Niveau 1

Pour chaque cas, recopier l’instruction dans l’éditeur de texte, exécuter le script et écrire le résultat dans la dernière
colonne (penser à supprimer le script précédent avant de taper de nouvelles instructions).

Afficher une information à l’écran en utilisant l’instruction print:


Instruction Equivalent en français Résultat à l’écran
Affiche à l’écran la chaine de
print("Bonjour")
caractère entre les guillemets

Attribuer ou déclarer une valeur à une variable :


Une variable est une zone de la mémoire de l'ordinateur dans laquelle une valeur est stockée. Aux yeux du programmeur,
cette variable est définie par un nom.
Instruction Equivalent en français Résultat à l’écran
Bonjour = 5 Affecte la valeur 5 à la variable Bonjour
print(Bonjour) Affiche cette variable
VarNote=15 Affecte la valeur 15 à la variable VarNote
print("Ta note est :",VarNote) Affiche du texte et la variable VarNote
x=7 Affecte la valeur 7 à la variable x
x=x+2 Ajoute la valeur 2 à l’ancienne variable x
print (x) Affiche x
a = 3.526205 Affecte la valeur 3,526205 à la variable a
print("a =",round(a,2)) Affiche du texte et la variable a arrondie
à deux chiffres après la virgule
Remarque :
Du point de vue mathématique, x=x+2 par exemple n’a aucun sens car la variable x ne peut être égale qu’à elle-même.
En informatique, cependant, c’est le cas puisque l’opérateur = n’est pas un signe d’égalité mais d’affectation :
• écrire x = x + 2 signifie qu’on affecte une nouvelle valeur à x qui est égale à l’ancienne à laquelle on ajoute 2.

Attribuer à une variable un contenu que doit rentrer l’utilisateur avec l’instruction input :
Input provoque l’interruption du programme et invite l’utilisateur à entrer une donnée.
Instruction Equivalent en français Résultat à l’écran
L’instruction attribue à la variable a
a = input("Quel est ton nom ?")
la chaine de caractères que
print(a)
rentrera l’utilisateur
La commande int impose à
age = int(input("Quel est ton age?"))
l’utilisateur d’entrer un entier
print(age)
naturel.
La commande float impose à
rayon = float(input("R = ? ")) l’utilisateur d’entrer un nombre qui
print(rayon) sera considéré comme un nombre
décimal.
La commande str fait que le
nom = str(input("Nom = ? ")) contenu entré par l’utilisateur sera
print(Nom) considérée comme une chaine de
caractères.
Remarque : le langage python est sensible « à la casse ». Chercher la signification de cette affirmation sur le web
(l’écrire ci-dessous) puis corriger la dernière instruction :
2nde … - Nom Prénom : ……………………………. SNT0. Démarrer avec le numérique – Activité 4 page 3/7

Appeler une bibliothèque contenant de nouvelles instructions (indisponibles dans les fonctions de base de
python) avec l’instruction import :
Par exemple, le programme python ne connait ni le nombre Pi, ni la fonction sinus ou carré. Il faut donc importer une
bibliothèque (un module) qui les contient.
Instruction Equivalent en français Résultat à l’écran
import math Affiche à l’écran la valeur de p qui se
print (math.pi) trouve dans la bibliothèque math ainsi
print (math.sin(3)) que la valeur de sin(3).
import math as m Renomme la bibliothèque math en m.
print (m.pi) Cela simplifie la syntaxe.
Affiche à l’écran la valeur de s qui
import math as m
correspond à la racine carré de 3.
s= m.sqrt(3)
L’instruction sqrt se trouvant dans le
print (s)
module math.
Affiche à l’écran un entier naturel pris au
import random as rnd
hasard entre 2 et 5. L’instruction randint
print (rnd.randint(2,5))
se trouvant dans la bibliothèque random.
import datetime
Importe la bibliothèque date time et
date = datetime.datetime.now()
place dans la variable date la date
str(date)
actuelle en
print(date)

Utiliser les opérateurs élémentaires :


Instruction Equivalent en français Résultat à l’écran
a=3 Affecte à a la valeur 3
b=2 Affecte à b la valeur 2
print ("somme : ",a+b) Affiche la somme de 2+3
print ("produit : ",a*b) Affiche le produit de 2´3
print ("division : ",a/b) Affiche la division de 2 par 3
print ("puissance : ",a**b) Affiche 3 à la puissance 2
a = "3" Affecte à a le caractère 3
b = "2" Affecte à b le caractère 2
print (a+b) Affiche la concaténation de 2 et 3
Lexique : Concaténation (substantif féminin), du latin cum («avec») et catena («chaîne, liaison»), désigne l'action de
mettre bout à bout au moins deux chaînes.
L’une des tâches courantes que vous devrez accomplir avec n’importe quelle langue consiste à fusionner ou à combiner
des chaînes. Ce processus est appelé concaténation.
La meilleure façon de le décrire est de prendre deux chaînes distinctes et de les combiner pour qu’elles deviennent une
en utilisant l’opérateur +.

Ecrire un commentaire :
Les commentaires sont des messages qui sont ignorés par l'interpréteur et qui permettent de donner des indications sur
le code (car il est compliqué de relire ses programmes après plusieurs jours d'abandon, sans commentaires). En Python,
un commentaire débute par un dièse (« # ») et se termine par un saut de ligne, et est ignoré lors de l’exécution du
programme.
Repérer (en les soulignant) les commentaires dans les instructions suivantes :
Instruction Equivalent en français Résultat à l’écran
Affecte à a le caractère 3
# Apprentissage des commentaires
Affecte à b le caractère 2
a = "3"
Affiche la concaténation de 2 et 3
b = "2"
Les commentaires n’apparaissent
print (a+b) # Affiche la concaténation de 2 et 3
pas, ils ne sont pas interprétés
2nde … - Nom Prénom : ……………………………. SNT0. Démarrer avec le numérique – Activité 4 page 4/7

Utiliser quelques instructions de base en python - Niveau 2

Pour chaque cas, copier l’instruction dans l’éditeur de texte, exécuter le script et écrire le résultat dans la dernière colonne
(penser à supprimer le script précédent avant de taper de nouvelles instructions).

Effectuer un test logique avec l’instruction if (introduire une condition) :


Na pas oublier le : (deux-points) à la fin de la ligne introduit le bloc d’instructions qui sera exécuté si la condition est
vérifiée.
Instruction Equivalent en français Résultat à l’écran
Demande à l’utilisateur de rentrer un
i = int(input("rentre une valeur de i"))
entier pour la valeur de i.
if i == 3 :
Affiche la valeur de i à la condition
print (i)
que i soit égal à 3
Demande à l’utilisateur de rentrer un
i = int(input("rentre une valeur de i"))
entier pour la valeur de i.
if i != 3 :
Affiche mauvaise réponse si i est
print ("mauvaise réponse")
différent de 3
Bloc d’instructions – Indentation :
L’instruction if est la structure de test la plus simple. Sa syntaxe en Python fait intervenir la notion de bloc
d’instructions. Nous allons donc étudier cette notion plus en détail.
Les blocs d’instructions sont toujours associés à une ligne d’en tête contenant une instruction spécifique (if, else, elif,
while…) se terminant par un double point.
Un bloc est défini par une indentation obtenue en décalant le début des instructions vers la droite grâce à des espaces
en début de ligne (habituellement 4 espaces mais ce n’est pas obligatoire). Toutes les instructions d’un même bloc
doivent être indentées exactement au même niveau (c’est-à-dire décalées à droite d’un même nombre d’espaces).
Un bloc peut contenir une ou plusieurs instructions, et notamment des instructions composées (tests, boucles, etc.).

Instruction Equivalent en français Résultat à l’écran


age = int(input("rentre ton age")) Lignes d’en tête se terminant par un double point
if age > 17 :
print ("Majeur") Affiche Majeur puis vous
Indentation print (“vous pouvez voter) pouvez voter si la variable
age est supérieure à 17,
else : sinon (else) affiche Mineur
Indentation print ("mineur") Puis affiche Fin
print("Fin") Bloc d’instructions
indentés

Dans cet exemple, le bloc après le if contient deux instructions. Ces 2 instructions sont indentées (décalées) de la même
façon.
Le bloc après l’instruction else ne contient qu’une instruction.
L’instruction print("Fin") ne fait pas partie du bloc else : car elle n’est pas indentée. Fin va donc apparaitre dans tous les
cas.

On aura parfois besoins d’utiliser une liste pour utiliser les boucles:
Une liste est une structure de données qui contient une série de valeurs. Python autorise la construction de liste
contenant des valeurs de types différents (par exemple entier et chaîne de caractères), ce qui leur confère une grande
flexibilité. Une liste est déclarée par une série de valeurs (n'oubliez pas les guillemets, simples ou doubles, s'il s'agit de
chaînes de caractères) séparées par des virgules, et le tout encadré par des crochets. En voici quelques exemples :
2nde … - Nom Prénom : ……………………………. SNT0. Démarrer avec le numérique – Activité 4 page 5/7

Effectuer des Boucles¶ :


Les boucles s’utilisent pour répéter plusieurs fois l’exécution d’une partie du programme.
Il existe des boucles bornées et non bornées
Boucle bornée : quand on sait combien de fois doit avoir lieu la répétition, on utilise une boucle for.
Boucle non bornée : si on ne connait pas à l’avance le nombre de répétitions, on choisit une boucle while.

L’instruction while effectue une ou un ensemble de lignes indentées tant que une condition est remplie:
instruction Equivalent en français Résultat à l’écran
i=0 Donne à i la valeur 0
while i < 4 : Tant que i est plus petit que 3 faire
i=i+1 Ajouter 1 à i
print (i) Afficher i
Remarque : pour les instructions for et while on retrouve la syntaxe des blocs d’instructions indentés avec :
• La ligne d’en tête contenant une instruction spécifique (if, else, elif, while…) se terminant par un double point.
• Les blocs d’instructions délimités par l’indentation.

L’instruction for effectue une boucle bornée. Elle répète tout le contenu indenté placé sous elle :
Dans l’en-tête de la boucle, on précise après le mot-clé for le nom d’une variable (i dans l’exemple ci-dessus) qui
prendra successivement toutes les valeurs qui sont données après le mot-clé in. On dit souvent que cette variable (ici i)
est un compteur car elle sert à numéroter les itérations de la boucle.
On utilise souvent la fonction range() qui permet de créer une suite d’entier.

instruction Equivalent en français Résultat à l’écran


Pour i allant de 5 à 8
for i in range(5,9) :
Afficher i
print (i)
for i in range(3) : Pour i allant de 0 à 2
print (i) Afficher i
for i in range(2) : Pour i allant de 0 à 1
print ("réponse",i) Afficher réponse i
print ("*****") Afficher *****
A compléter :
for i in range(3) :
print ("réponse",i)
print ("*****")

instruction Equivalent en français Résultat à l’écran


Pour i prenant les valeurs 0,1,2,5
for i in [0, 1, 2, 5]:
Afficher i à pour valeur « i »
print("i a pour valeur", i)

Pour i prenant les valeurs 0,1,2,3,4


c = ["Marc", "est", "dans", "le", "jardin"]
Afficher pour chaque valeur de i la
for i in range(len(c)):
valeur de l’élément d’indice i de la
print("Pour i =", i, "alors c[i] vaut", c[i])
liste.

La fonction len() renvoie le nombre d’éléments d’une liste. Ici, len(c) = 5 donc for i in range(len(c)): correspond bien à
« Pour i prenant les valeurs 0,1,2,3,4 ».
2nde … - Nom Prénom : ……………………………. SNT0. Démarrer avec le numérique – Activité 4 page 6/7

Utiliser quelques instructions de base en python - Niveau 3


Il est aussi possible de tracer des graphiques avec la bibliothèque (ou module) matplotlib.pyplot :
Le résultat s’affiche dans une fenêtre graphique qui s’ouvre après l’exécution du programme.
instruction Equivalent en français
import matplotlib.pyplot as plt
Importe la bibliothèque matplotlib.pyplot et la renomme en plt.
plt.plot(2,5)
Place dans un graphe le point d’abscisse x = 2 et d’ordonnée y = 5
plt.show()
Affiche le graphe.
import matplotlib.pyplot as plt
plt.plot([2,4,6],[4,3,7]) Place sur un graphe les points de coordonnées (2 ;4), (4 ;3) et (6 ;7)
plt.show() Affiche le graphe.

import matplotlib.pyplot as plt


plt.plot([2,4,6],[4,3,7], "g+")
Affiche des points en forme de croix (+) vertes (g = green).
plt.xlim(0,10)
L’axe des x commence à 0 et finit à 10
plt.ylim(-5,10)
L’axe des y commence à - 5 et finit à 10
plt.show()

import matplotlib.pyplot as plt


plt.plot([2,4,6],[4,3,7], "cs")
Affiche des points en forme de carré (s = square) cyan (c = cyan).
plt.xlabel("temps")
Affiche le mot temps en dessous de l’axe des x
plt.ylabel("position")
Affiche le mot position en dessous de l’axe des x
plt.title("évolution de la voiture")
Affiche le titre évolution de la voiture en dessus du graphe.
plt.show()

import matplotlib.pyplot as plt Affiche des points en forme de croix (+) vertes (g = green).
I = [0, 1.0, 5.5, 7.0, 10] Création de la liste des intensités.
U = [0, 8.0, 44, 56, 80] Créations de la liste des tensions
plt.plot(I, U, 'g+') Affiche le graphe avec les éléments de la liste I en abscisses et ceux de la
liste U en ordonnés.
plt.xlabel("Intensité I(mA)") Affiche "Intensité I(mA)") en dessous de l’axe des x
plt.ylabel("Tension U(V)") ("Tension U(V)" en dessous de l’axe des y
plt.title("Caractéristique électrique U=f(I) Affiche un titre
d'un résistor")
plt.xlim(0,12) L’axe des x commence à 0 et finit à 12
plt.ylim(0,85) L’axe des y commence à 0 et finit à 85
plt.grid() Affiche la grille
plt.show()

Couleurs disponibles : blue (b), green (g), red (r), cyan (c), magenta (m), yellow (y), black (k), white (w)
Forme des points point (.), pixel (,), rond (o), triangle (< ^ > v), carré (s), pentagone (p), étoile (*), croix (+ x), …

Questions
1) Écrire le script du dernier programme ci-dessus (en grisé) dans l’éditeur de texte. Puis l’exécuter.
2) Rajouter le point de coordonnées I = 14 mA et U = 112 V dans les listes.
3) Exécuter le script. Combien de points devraient apparaitre sur le graphique ? Est-ce le cas ?
4) Modifier le script pour qu’il permette d’afficher tous les points. Exécuter le script pour vérifier.
2nde … - Nom Prénom : ……………………………. SNT0. Démarrer avec le numérique – Activité 4 page 7/7

Exercices de programmation

Exercice 1
1) Écrire le script suivant dans l’éditeur de texte et l’enregistrer sous le nom exercice1.py

2) Exécuter le programme plusieurs fois. Que fait-il ?


3) Compléter le programme pour qu’il y ait toujours une réponse du programme.

Exercice 2 : La moyenne ou pas ?


Le script suivant calcule la moyenne de 3 notes. Il doit ensuite indiquer si la moyenne est au dessus ou en dessous de 10.
Compléter le script. L’exécuter plusieurs fois pour vérifier. Et l’enregistrer sous le nom exercice2.py

Exercice 3 : Ça gèle pour les plantes !


Un cultivateur souhaite savoir s’il doit rentrer une plante durant l’hiver afin qu’elle ne gèle pas. Si la température est
supérieure à 3°C, il peut laisser sa plante à l’extérieur, si elle est comprise entre -1 et 2°C, il doit la rentrer la nuit, et
pour une température inférieure à -2°C, il doit la rentrer toute la journée.
Écrire le script d’un programme qui demande la température extérieure et qui renvoie l’information indiquant au
cultivateur le choix à faire pour sa plante. Et l’enregistrer sous le nom exercice3.py

Exercice 4 : Graphique du 1000 m


Voici les chronomètres obtenus par Yusuf aux épreuves du 1000 m lors d’une compétition locale.
2 min 45 s 2 min 37 s 2 min 58 s 2 min 50 s 3 min 01 s 2 min 46 s 2 min 35 s 2 min 44 s 2 min 51s

Créer un programme qui permet de tracer un graphique des temps obtenus aux différents essais. Le graphique devra
posséder un titre, des légendes aux axes, les points s’afficheront sous forme de croix rouges. Le programme devra
également afficher la moyenne des temps lors de cette compétition, le meilleur temps obtenu. Et l’enregistrer sous le
nom exercice4.py

Renvoyer le script du dernier programme qui fonctionne sur ProNote.

Vous aimerez peut-être aussi