Vous êtes sur la page 1sur 10

Thème transversal

PYTHON : Notions de programmation

Capacités : Comprendre les bases du langage de programmation python et de son utilisation


Vocabulaire :
Algorithme : Ensemble de règles opératoires dont l'application permet de résoudre un problème énoncé au moyen
d'un nombre fini d'opérations. Un algorithme peut être traduit, grâce à un langage de programmation, en un
programme exécutable par un ordinateur.
Algorithmique : Qui concerne les algorithmes, peut être exprimé par un algorithme. Se dit des langages de
programmation informatique, tel l'algol, conçus pour faciliter l'expression d'algorithmes.
Programme : Ensemble d'instructions et de données représentant un algorithme et susceptible d'être exécuté par un
ordinateur. Un programme est la description de la suite, souvent cyclique, d'opérations que doit effectuer une
machine quelconque pour réaliser une opération.
Concaténation : enchaînement de deux listes ou de deux chaînes de caractères mises bout à bout.
Opérande : Élément sur lequel porte une opération (mathématique ou informatique) ou une instruction d'un langage
de programmation.
Comprendre Python et ses modes d’exécution :
Il existe deux modes d’utilisation de Python, le mode SHELL et le mode EDIT.
Mode SHELL :
(Mode par défaut dans IDLE et Python)
Interactif, exécute immédiatement les commandes (dans la barre de menu, entrées « Shell » et « Debug »).
Mode EDIT (IDLE) :
C’est un éditeur de texte amélioré qui permet d’écrire en totalité une application avant de l’exécuter (dans la
barre de menu, entrées « Format » et « Run »).
Ici Couper/coller fonctionne, « entrée » envoie à la ligne etc. Ce mode permet aussi l’ajout de commentaires, de
comprendre les indentations et d’exécuter l’application.
Ouvrir une fenêtre en mode EDIT : Comme SHELL est le mode par défaut, si vous êtes en IDLE il faut faire
File => New file pour ouvrir le mode EDIT.
Sauvegarder en mode EDIT : File => Save (créer un dossier de sauvegarde en dehors du dossier « Python » afin
d’éviter toute pollution)
Exécuter une application : Edit => Run => Run module
>>Restart : relance une nouvelle fois la même application
Dans certaines versions comme Edupython ou Thonny, ces deux modes apparaissent comme des
fenêtres différentes et il n’est pas nécessaire d’ouvrir une fenêtre EDIT.
Code Couleur EDIT :
En mode EDIT un code couleur aide à comprendre le sens des données. Pour commencer retenez que :
Pourpre = commande ; Vert = données (dans la commande) et Bleu = sortie.
Commentaires :
Lorsqu’on écrit ou on utilise un programme Python, des commentaires peuvent clarifier le rôle des lignes de
commande. Ainsi :
# Insère une ligne de commentaires à côté de la commande (ou sur sa propre ligne)
« « « » » » Insère un paragraphe de commentaires
p. 1/10
I : Notions de variable et affectation
I.1 : Variable
En mathématiques :
Une variable numérique est une grandeur dont la valeur n’est pas fixée. Elle est souvent désignée par un symbole
de type lettre (par exemple, x, t, θ, n, …). Cette grandeur appartient à un ensemble bien défini. A cette grandeur
peuvent être associées des expressions algébriques dont la valeur dépend de celle que prend la variable.

Exemple : Pour tout réel x, l’expression A(x) = x2 - 2x + 1 est définie en fonction de la variable x.

Pour x = 3, A(3) =
En algorithmique :
Une variable est une information stockée temporairement dans une zone mémoire de la machine. Elle peut être
considérée comme une boîte de stockage.
Représentation schématique d’une variable
Elle est constituée de deux éléments :

 Son nom, c’est l’étiquette de la boîte.


 Sa valeur, c’est le contenu de la boîte.

Son contenu peut changer au cours de l’exécution des instructions.


Voici quelques exemples de types de valeurs :
 Un nombre entier (relatif) ;
 Un nombre à virgule (on dit aussi un nombre flottant) ;
 Une chaîne de caractères (un caractère pouvant être un chiffre, une lettre, un symbole, …).

I.2 : Affectation
Définition : l’affectation consiste à donner une valeur à une variable.
Exemple : a = 3
Ce n’est pas une équation, il faut comprendre ici que la variable a prend la valeur 3
Autre exemple de couple variable/ affectation, votre âge.

I.3 : Appeler une variable et l’utiliser dans Python


Si on tape >>> a = 3 puis entrée il ne se passe rien mais python à assigné la valeur 3 à la variable « a ».

Dès lors si on tape a puis « entrée », Python affiche >>> 3.


Si on fait x = a + 1 « entrée » puis
>>> x entrée, Python affiche :

Quelques exemples d’affectations et leur signification :


(Taper directement l’opération dans le module SHELL de python pour découvrir sa fonction)
 x=2
 y=5
 z = x+y
 x = x+1 p. 2/10
 y = x*2
 z = y/2
 x = 5+3
 x = 5 + 3.0
 x = 17/5
 x = 17//5
 x = 17%5
 x = 2**2
 x = 2**3
 x = 3e2
 lycee = ”Balzac”
Remarques :

 X = 15 * 3
 X = 15 * 3.0
 X = 15 / 3.0
 X = 15 / 3
 X = 5+3
 X = 5+3.0

Type (5)
Type(5.0)

L’instruction Type() permet

II : Importation d’un module


D’abord, qu’est-ce qu’un module ? Il s’agit d’une sorte de bibliothèque (un regroupement de fonctions
prédéfinies) qui une fois importée permet d’accéder à de nouvelles fonctions. Il en existe beaucoup. On peut citer :
 Le module math : permet d’avoir accès aux fonctions mathématiques comme le cosinus (cos), le sinus (sin),
le nombre (pi) et bien d’autres...
 Le module matplotlib : qui permet de faire des graphiques en tout genre.
Il y en a beaucoup d’autres, tant dans la nature (https://github.com/search?q=python+module) que dans la
bibliothèque standard (http://docs.python.org/3/py-modindex.html), voire des modules que vous aurez codés vous-
mêmes.
Pour importer un module : Remarque :
>>> from nom du module import * import * importe l’ensemble des commandes du
module. On peut aussi taper uniquement le nom de
>>> Taper la commande l’opérande désiré.
Exemple : From math import sqrt

p. 3/10
Importer le module math pour réaliser des commandes :
>>> from math import * # importation du module
● x = sqrt(9)
>>> sqrt(9)
● y = pi
III : Commandes relatives aux chaînes de caractères
Les chaînes de caractères se définissent à l’aide de guillemets doubles ou simples.

Exemples : C = “Python” ou C = ’Python’


Pour obtenir la longueur d’une chaîne de caractères : len(C)
Pour extraire un caractère d’une chaîne de caractères : C[n] retourne le ne caractère
Attention : on numérote à partir de 0 !
Concaténation de chaînes :
“bon” + ‘‘jour” donne “bonjour”
On peut répéter une chaîne de caractères un nombre entier de fois :
‘‘bon’’*3 donne : ‘‘bon’’*3.5 donne :
On ne peut concaténer chaînes de caractères et valeurs numériques : ‘‘bon’’+3 donne :
On peut convertir un nombre en chaîne de caractères par la commande str()
‘‘bon’’+ str(3) donne :

IV : Saisie d’une valeur par l’utilisateur


La plupart des scripts élaborés nécessitent à un moment une intervention de l'utilisateur (entrée d'un
paramètre etc.). Dans un script en mode texte, la méthode la plus simple consiste à employer la fonction input().
Cette fonction interrompt le programme courant et invite à entrer des caractères au clavier et à terminer avec
<Entrée>. L'exécution du programme se poursuit alors.
Lorsque l’utilisateur doit renseigner une valeur, on utilise la commande input() :
Exemple :
print(“Quel est votre nom ?”)
nom = input()
print (“bonjour,” nom)
La fonction input() renvoie toujours une chaîne de caractères. Si vous souhaitez que l'utilisateur entre une valeur
numérique, vous devrez donc convertir la valeur entrée (qui sera donc de toute façon de type string) en une valeur
numérique du type qui vous convient, par l'intermédiaire des fonctions intégrées int() (si vous attendez un entier)
ou float() (si vous attendez un réel).
On force le type de réponse lorsque l’on attend :
- Un nombre entier : int()(Intégral : n’accepte que les nombres entiers en réponse)
- Un nombre décimal : float()(n’accepte que les nombres à décimale en réponse)
Exemple :
print(“Donnez-moi un nombre entier n entre 1 et 6 :”)
n = int(input())
print(“Donnez-moi un nombre x dans l’intervalle ]1;2[ :”)
x = float(input())
p. 4/10
V : Les fonctions
V.1 : En mathématiques
Définir une fonction f de la variable x sur un ensemble D, c’est associer à chaque valeur de x (de l’ensemble D)
un unique nombre noté f(x).

Remarque : il existe aussi des fonctions de plusieurs variables, mais elles ne sont pas abordées en classe de
seconde.

Exemple : Pour tout x de l’intervalle [-5;5], f(x) = (x-1)2 + 3

V.2 : En algorithmique
Une fonction peut être considérée comme une séquence d’instructions réalisant une certaine tâche, en utilisant
un ou plusieurs arguments. Cette fonction reçoit un nom.

Une fonction permet de découper le problème étudié en sous-problèmes et d’éviter ainsi la répétition inutile
d’instructions.

Une fois une fonction définie, elle peut être “appelée” tout au long de l’exécution de l’algorithme, autant de fois
que nécessaire.

Dans le cas général, la définition d’une fonction à la structure suivante :

def nom_fonction(liste d’arguments):


{bloc d’instructions}
return résultat

Exemple de fonction, calcul de la surface de peau d’un adulte :

La surface de la peau d’un adulte (en mètres carrés) est donnée approximativement par la formule de Mosteller :

√𝐿∗𝑀
𝑆= Où L est la taille (en cm) et M la masse (en kg).
60

Pour programmer ce calcul, on définit une fonction appelée surface (par exemple)
- surface a deux arguments L et M
- surface retourne la valeur de S.

def surface(L,M):
return sqrt(L*M)/60

On peut alors appeler la fonction avec : surface( , )

A noter, l’indentation dans la définition.


Une indentation est un décalage du texte au niveau de la marge (un espace)

p. 5/10
VI : Indentation et définition des « blocs de programme »
Les fonctions Python n'ont pas de begin (début) ou end (fin) explicites, ni d'accolades qui pourraient
marquer là ou commence et où se termine le code de la fonction.
Python utilise le symbole de deux points (:) et une indentation pour identifier une ligne de code.

Les blocs de code (fonctions, boucles for etc.) sont définis par leur indentation. L'indentation démarre le bloc et
la désindendation le termine.
Cela signifie que les espaces blancs sont significatifs et qu'ils doivent être cohérents.
Exemple :

VII : Les opérateurs de comparaison


Un opérateur accepte une ou plusieurs entrées sous forme de variables ou d’expressions. Il effectue alors
une certaine tâche (comme une comparaison ou une addition et il renvoie une sortie en fonction du résultat obtenu.
Les opérateurs sont classés selon leurs effets et le nombre d’éléments qu’ils réclament. Par exemple, un opérateur
unaire ne nécessite qu’un élément tandis qu’un opérateur binaire en nécessite deux.
Les opérateurs de de comparaison :
Comparent deux termes et la sortie ne peut être que ‘‘True’’ (vrai) ou ‘‘False’’ (faux).

Opérateur Signification Exemples

sqrt(9) == 3 true
==
pi == 3.14 false

pi != 3.14159
!=

7 > 9 false
> ou <
9 < 7 7 < 9

8 <= 8.0 true


>= ou <=

p. 6/10
VIII : Les instructions conditionnelles (if ; else ; elif)
Les instructions conditionnelles permettent de prendre des décisions.
 if (si…) : Si quelque chose est vrai, Python réalise les étapes suivantes.
 if (si…) / else (sinon…) : else permet de réaliser une tâche alternative lorsque if n’est pas vérifiée.
 elif (else + if) : Permet de réaliser une liste dans laquelle on peut piocher pour débuter l’application.
Exemple avec if (Si…. Alors) : Exemple avec if / else : Exemple avec if / elif / else :

Rappel : en langage Python, c’est l’indentation qui marque la fin des blocs d’instructions.
Remarque : le “else” est aligné avec le “if” qui lui correspond.
Exemple avec if / else : le prix d’une place de cinéma selon l’âge d’une personne
def tarif(age):
if age < 18:
t = 6.00 # tarif réduit pour les mineurs
else:
t = 9.50 # plein tarif
return t
Exemple avec if / elif / else :
print ("1.rouge")
print ("2.vert")
print ("3.bleu")
print("choisissez votre couleur favorite : ")
choice = int(input( ))
if(choice == 1):
print ("vous avez choisi rouge !")
elif(choice == 2):
print ("vous avez choisi vert !")
elif(choice == 3):
print ("vous avez choisi bleu !")
else:
print("vous avez fait un choix invalide !")

p. 7/10
IX : Les connecteurs logiques

Les opérateurs logiques (booléens) combinent la valeur true (vrai) et false (faux) de variables
ou d’expressions pour pouvoir déterminer la valeur résultante. Ils servent à créer des expressions booléennes
(logiques) qui vous aident à savoir si une certaine tâche doit être réalisée (voir tableau récapitulatif).

IX.1 : Le connecteur logique “et” (and)

La condition (<cond1>and (et) <cond2>) est vérifiée si et seulement si les deux conditions sont toutes les
deux vérifiées (true).

Exemple :
La condition (x⩾0 and x<2) est vérifiée si et seulement si x ∈ [0;2[

IX.2 : Le connecteur logique “ou” (or)

Dans le langage usuel, la conjonction de coordination “ou” exprime un choix, une alternative (“ou bien”), qui
peut permettre une reformulation (“ou encore”).
Exemples :
● Dans un menu, on précise “fromage ou dessert”.
Le “ou” a ici un sens exclusif, on ne peut pas profiter à la fois du fromage et du dessert.
● Un serveur vous demande “voulez-vous du lait ou du sucre avec votre café ?”.
Le “ou” a ici un sens inclusif. Vous pouvez vouloir l’un, ou l’autre ou les deux.

En algorithmique, la condition (<cond1> or (ou) <cond2>) est vérifiée si et seulement si l’une au moins des
conditions est vérifiée (true). Le “ou” a toujours ici un sens inclusif.

Exemple : La condition (x⩾0 ou x<2) est vérifiée pour tout nombre réel x.

IX.3 : Le connecteur logique ‘‘non’’ (not)

Not inverse la valeur logique de l’opérande.

Les opérateurs logiques de Python

Opérateur Fonction Exemples

true and true => true


true and false => false
and Détermine si les deux opérandes sont vraies.
false and true => false
false and false => false

true and true => true


true and false => true
or Détermine si l’une au moins des opérandes est vraie.
false and true => true
false and false => false

not true => false


not Inverse la valeur logique de l’opérande.
not false => true

p. 8/10
Exemples d’utilisation de connecteurs logiques
Exemple 1 : x=int(input(‘‘saisir un nombre : ’’))
if (x%2 == 0) and (x%3 != 0):
print (“Nombre multiple de 2 mais pas multiple de 3”)
else :
print (‘‘ la condition n’est pas remplie’’)

Exemple 2 : x=int(input(‘‘saisir un nombre : ’’))


if (x%2 == 0) or (x%3 == 0):
print(“Nombre multiple de 2 ou multiple de 3”)

Exemple 3 : x=int(input("saisir un nombre : "))


if (x%2 == 0) or (x%3 == 0):
print("Nombre multiple de 2 ou multiple de 3")
elif (x%2 == 0) and (x%3 !=0):
print ("Nombre multiple de 2 mais pas multiple de 3")
elif (x%2 != 0) and (x%3== 0):
print ("nombre multiple de 3 mais pas de 2")
else:
print ("nombre divisible ni par 2 ni par 3")

X : Répéter une instruction : Les boucles dans Python


Une séquence qui se répète est nommée une boucle, en programmation. Dans une boucle le programme
exécute une même série de tâches encore et encore jusqu’à ce que le boucle se termine (une condition de fin est
remplie). On distingue deux types de boucles :
 Les boucles bornées, dont le nombre de répétitions est fixé à l’avance : for
 Les boucles non bornées, dont le nombre de répétitions n’est pas fixé : while
X.1 : Les boucles bornées, for
La boucle “for” permet de répéter un bloc d’instructions un certain nombre de fois fixé au départ.

Elle débute par l’instruction for suivie d’une description du comportement de la boucle.

Exemple :
LettreNum = 1 # crée une variable nommée LettreNum permettant le suivi du nombre de lettres traitées

for Letter in ‘‘Bonjour !’’ : # boucle d’instructions


print (‘‘La lettre’’, LettreNum, ‘‘est’’, Letter)
LettreNum+=1 # a chaque fin de passage LettreNum incrémente de 1

p. 9/10
X.2 : Les boucles non bornées, while

La boucle “while” permet de répéter un bloc d’instructions un certain nombre de fois tant qu’une
condition reste vérifiée.
Dans une telle boucle, on ne sait pas, à l’avance, combien d’itérations vont être exécutées.

Exemple :
Sum = 0 # crée une variable Sum, point de départ de la boucle
while Sum < 5: # condition de fin de boucle
print(Sum) # bloc d’instructions (donner la valeur de Sum)
Sum+=1 # actualiser la valeur de Sum pour recommencer la boucle.

Exemples d’utilisation de boucles d’instructions

Exemple 1 : Exemple 2 : Exemple 3 :

for k in range(3): for n in range(3): For p in range (5,8):


print("hello") print(n) print(p)

Exemple 4 :

3
Une balle lâchée d’une hauteur de 150 cm rebondit chaque fois qu’elle touche le sol aux e de la hauteur du rebond
5
précédent. On souhaite connaître le nombre de rebonds au bout duquel la hauteur atteinte par la balle est strictement
inférieure à 1 cm.

p. 10/10

Vous aimerez peut-être aussi