Les bases pour comprendre la programmation avec Python

  • Post last modified:28 juin 2022
  • Temps de lecture :11 min de lecture
  • Post category:Lycée

Python est un langage de programmation très populaire dans les écoles et les entreprises. Il doit sa popularité à une syntaxe claire et un vocabulaire intuitif qui permettent une initiation et un apprentissage aisés de la programmation.

Capacités travaillées

Présentation de l’environnement Python

Le programmeur écrit ses lignes de code à l’aide d’un éditeur de texte/code (notepad+, sublimetext…) qui pourra alors créer des fichiers Python qui auront pour extension : *.py (voir image à gauche ci-dessous).

L’élève de lycée ou de collège pourra utiliser des logiciels (Edupython, Spyder…) compilant déjà de nombreuses bibliothèques de python : ils sont plus simples d’utilisation.

Ce code sera alors exécuté et s’affichera sur une console (voir image à droite ci-dessous) avec laquelle il est possible d’interagir (si vous avez inséré la fonction input)

Le CODE à exécuter...

... s'affiche sur la CONSOLE

Observons l’organisation des différentes zones du CODE à exécuter :

Les commentaires

  • # Texte : aide à comprendre les lignes du programme pour un tierce codeur.
  • ‘  »  »’ (les guillemets) : par convention , on les utilise pour du texte qui participe au code.

Les bibliothèques / libriaires

Ensemble de modules ou fonctions ajoutant des possibilités à Python. Exemple : numpy (pour les calculs mathématiques), matplotlib (pour les graphiques) …

Les fonctions

Ensemble de commandes regroupé sous un seul nom. Exemple :
  • print (« Texte ») : permet d’afficher du texte dans la console
  • input (« Texte ») : permet de rentrer via la console une variable que l’utilisateur a choisie.

Les variables

Zone de la mémoire de l’ordinateur dans laquelle une valeur est stockée. Attention, par défaut, python considère qu’une variable stockée grâce à la fonction input() est du texte. Si on rentre un nombre (très souvent le cas), il faudra lui spécifier qu’il s’agit d’un nombre grâce aux fonctions float() ou int()

Python est encore flou pour vous ? Ne vous inquiétez pas. C’est en écrivant les codes et en les faisant tourner que les choses deviennent claires. 

Tracer un graphique avec python

Le but de ce travail est de tracer un graphique ( = ensemble de points défini par des coordonnées (x,y) ) avec python. Maxime a relevé les positions d’une balle envoyée en l’air à l’aide du logiciel LatisPro et a consigné les mesures dans le tableau suivant :

Tableau de mesure d'une balle envoyée en l'air avec ses coordonnées en x, y et t.

  • Copier le code ci-dessous
  • Coller-le dans la fenêtre « code » de votre logiciel python.
  • Exécuter-le dans votre logiciel. 
# Importation de la bibliothèque qui gère les graphiques
import matplotlib.pyplot as plt


# Déclaration des variables x, y et t
# On range les coordonnées dans une liste entre crochets [ ]
# On remarque que les nombres décimaux sont écrits avec un point et non une virgule
x = [1, 1.7, 2.8, 4, 5, 6.5, 7.5, 8]
y = [1, 2.4, 3.5, 4.5, 4.5, 3.5, 2, 1]
t = [0, 0.2, 0.4, 0.6, 0.8, 1, 1.2, 1.4]


# Utilisation de 2 fonctions à découvrir : len() et print()
N_ligne = len(x)
print (N_ligne)

# Utilisation des outils de la bibliothèque "Mathplotlib" pour tracer le graphe
plt.plot ( x , y , "ro" )
plt.axis ( [ 0 , 10 , 0 , 5 ] )
plt.show ()

Travail n°1 :

Remarque : pour répondre aux questions, il sera nécessaire de changer le code en supprimant des données, des lignes entières puis de relancer l’exécution pour constater ou non des changements. 

  1. Quelle est l’utilité des fonctions len() ? print() ? 
  2. A quoi sert plt.plot ?
  3. A quoi sert plt.axis ?
  4. A quoi sert ro ? Essayer r tout seul. Essayer rx. Essayer bx.
  5. A l’aide du fichier « Tutoriel Python – Matplotlib Graphiques.pdf« , nommer les 2 axes, ajouter un titre à votre graphique et ajouter une grille à votre graphique. 
  6. Tracer maintenant l’évolution des coordonnées en abscisse x en fonction du temps t

Python, une autre calculatrice

Travail n°2 : Copier-coller le code ci-dessous puis exécuter-le.

# Déclaration des variables
x = 2
y = 3

# Calculs demandés
c = x + y 
d = x * y

# Utilisation de la fonction print()
print (c)
print (d)
print (c + d)

Python permet de faire des calculs tout comme une calculatrice. Nous pouvons lui demander d’afficher les résultats qui nous arrangent.

Différence entre un nombre et une chaine de caractère

Travail n° 3 : Copier l’intégralité du code ci-dessous puis coller-le par dessus votre travail précédent. Exécuter le code, observer et comprenez les résultats.


a = '10'    #Ceci est une chaine de cartère pour Python
b = '2'     #Ceci est une chaine de cartère pour Python
d = 10      #Ceci est un nombre pour Python
e = 2       #Ceci est un nombre pour Python
c = a + b
f = e + d
print(c)
print(f)
print(c, f) 

Travail n° 3 bis :

  • Tenter de prévoir ce que le code ci-dessous affichera dans la console.
  • Ecrire la ligne de code qui permettra d’afficher une phrase qui a un sens.

Variable_1 = 'Je multiplie'
Variable_2  = '2 par'
Variable_3 = '10. Cela fait' 
Variable_4 = '2O'

Phrase_1 = Variable_3 + Variable_1 + Variable_2
Phrase_2 = Variable_4 + Variable_3 + Variable_2 + Variable_2

print(Phrase_1)
print(Phrase_2)

Utilité de la fonction input( )

Travail n°4 : Copier le code ci-dessous puis exécuter-le.

(Si le code plante, cela est normal. Répondez aux questions puis passer à la suite)

  • A quoi servent les guillemets ‘ ; ‘’ ;  »  ?
  • A quoi sert la fonction input() ?
' Un autre code à tester '
x = input ('x sera égale à ')
y = input ('y = ')
c = x + y 
d = x * y
print (c)
print (d)

Nous avons rencontré un problème : toutes les valeurs que vous rentrez avec la fonction input() correspondent à du texte (=chaine de caractère) pour python et non à un nombre. Il faut lui spécifier que notre variable est un nombre.

Travail n° 4 bis : Pour régler le problème, rajouter les 2 lignes de code ci-dessous sous les input() puis exécuter le code.

  • Pensez à revenir à la ligne.
  • Si cela ne fonctionne pas, demandez de l’aide.
x = float (x)     # Indique à Python que x est un nombre
y = float (y)     # Indique à Python que y est un nombre

Travail n° 4 ter : Dans les fonctions print(c) et print(d), rajouter du texte pour qu’un utilisateur comprenne ce que fait le code via la console.

Exemple : print (‘J’additionne x et y = ’ , c)

Utilité de la fonction append( )

Travail n°5 : Copier le code ci-dessous, exécuter-le puis comprendre à quoi sert la fonction append()

  • Rajouter à l’aide de la fonction append() un nombre de votre choix aux listes y et t et afficher toutes les listes dans la console
# Reprenons nos listes du début : 
# Déclaration des variables x, y et t
x = [1, 1.7, 2.8, 4, 5, 6.5, 7.5, 8]
y = [1, 2.4, 3.5, 4.5, 4.5, 3.5, 2, 1]
t = [0, 0.2, 0.4, 0.6, 0.8, 1, 1.2, 1.4]

x.append(56)

print (x)

Travail n°5 bis : Nous allons rajouter le résultat issu d’un calcul.

  • Copier le code ci-dessous, exécuter-le puis le comprendre.
  • Dans la liste y, rajouter un nombre issu du calcul ( 15,5 × 8 ) et afficher la liste dans la console.
  • Dans la liste t, rajouter un nombre issu du calcul ( 78 / 3 ) et afficher la liste dans la console.
# Reprenons nos listes du début : 
# Déclaration des variables x, y et t
x = [1, 1.7, 2.8, 4, 5, 6.5, 7.5, 8]
y = [1, 2.4, 3.5, 4.5, 4.5, 3.5, 2, 1]
t = [0, 0.2, 0.4, 0.6, 0.8, 1, 1.2, 1.4]

xi = 5.7 * 1.6

x.append(xi)

print (x)

Travail n°5 ter : Nous pouvons automatiser l’insertion dans une liste de différents résultats issus d’un calcul à l’aide d’une boucle. 

  • Copier le code ci-dessous, exécuter-le puis le comprendre.
  • Dans la liste y, rajouter un nombre issu du calcul ( 15,5 × i ) et afficher la liste dans la console. 
  • Dans la liste t, rajouter un nombre issu du calcul  ( i / 3 ) et afficher la liste dans la console
# Reprenons nos listes du début : 
# Déclaration des variables x, y et t
x = [1, 1.7, 2.8, 4, 5, 6.5, 7.5, 8]
y = [1, 2.4, 3.5, 4.5, 4.5, 3.5, 2, 1]
t = [0, 0.2, 0.4, 0.6, 0.8, 1, 1.2, 1.4]

# Le premier pas de notre boucle ci-dessous commence à 0. 
# On dit aussi : On incrémente à partir de 0 pour la boucle while (=tant que)

i = 0   

# Boucle while :

while i<10:         # Tant que i est inférieur à 10
    xi = 6 * i      # Notre formule
    x.append(xi)    # On remplit la liste x avec le résulat du calcul
    i = i +1        # On avance de 1 notre l'incrémentation.
                    # La boucle se relance 

print (x)
Pour aller plus loin

La page web suivante vous guide pas-à-pas sur une série d’exercices afin de maitriser d’autres fonctions.

Source – monlyceenumerique.fr

Laisser un commentaire