You are on page 1of 8

CPGE : Reda Slaoui Année scolaire : 2022/2023

Programmation Python

1 Types de données
1.1 Types simples
Les valeurs possèdent ce qu’on appelle un type : par exemple entier, flottant, booléen, chaîne
de caractères..... Le type détermine les propriétés formelles de la valeur (par exemple, les opéra-
tions qu’elle peut subir) et matérielles (par exemple, la façon dont elle est représentée en mémoire
et la place qu’elle occupe). Pour connaître le type d’une expression après évaluation, il suffit de
le demander à Python à l’aide de type :

>>> type(24)
int
>>> type(5.698)
float
>>> type(5/2)
float
>>> type(4<7)
bool
>>> type("bonjour")
str

1.2 Opérateurs
Un opérateur est un signe ou un symbole qui va nous permettre de réaliser une opération.

1.2.1 Opérateurs arithmétique

Opérateur Description
+ Addition
- Soustraction
* Multiplication
/ Division
** Puissance
% Modulo
// Division entière

1
Règles de priorités. Certains opérateurs sont évalués avant les autres, dans l’ordre de priorité
suivant :
— Parenthèses
— Exponentiation
— Multiplication et Division
— Addition et soustraction
Sur les opérateurs de même priorité, c’est celui qui est le plus à gauche qui est évalué en premier.

Exemple
>>> 100**1/2
50.0
>>> 100**(1/2)
10.0

1.2.2 Opérateurs logique


Les opérateurs sur les booléens sont au nombre de trois. L’un (not) est un opérateur unaire
(ne prenant qu’un opérande), les deux autres (and et or) sont des opérateurs binaires (nécessitant
deux opérandes). la liste suivante présente les différents opérateurs booléens et leurs tables de
vérité.
A B not A A and B A or B
False False True False False
False True True False True
True False False False True
True True False True True

Règles de priorités. L’ordre de priorité d’évaluation pour les opérations booléennes est le
suivant :
— Parenthèses
— not
— and
— or
Sur les opérateurs de même priorité, c’est celui qui est le plus à gauche qui est évalué en premier.

Exemple
>>> False and False or True
True
>>> False and (False or True)
False

2
1.2.3 Opérateurs de comparaison
Python comprend différents opérateurs permettant d’effectuer des comparaison :

Opérateur Description
== égal
!= non égal
> supérieur
< inférieur
>= supérieur ou égal
<= inférieur ou égal

1.3 Les commentaires


Les langages de programmation proposent une notation pour insérer des commentaires dans
le code, c’est-à-dire du texte qui va être ignoré par l’ordinateur. Les commentaires peuvent servir
à expliquer une partie compliquée d’un programme, ou à mettre des indications dans le code.
Pour inséré un commentaire en Python, on précède le texte à écrire par un #.

Exemple
#ce programme calcule et affiche la somme de deux nombres x et y
#ceci est un commentaire
#il est ignoré lors de l’exécution
x=20 #Le premier nombre
y=10 # le deuxième nombre
print(x+y) # opération et affichage

1.4 Indentation
En python, la structuration des blocs d’instructions composées se fait grâce à un décalage
par des espaces appelé indentation.
Les lignes consécutives qui ont la même indentation appartiennent au même bloc.

2 Variable
2.1 Identificateur
Un identificateur est une suite de lettres et chiffres, qui commence par une lettre, et qui n’est
pas un mot réservé du langage. Les mots réservés du langage Python sont par exemple if, else,
def, return, True... Le caractère _ (underscore) est considéré comme une lettre,Les majuscules

3
et minuscules ne sont pas équivalents : x et X sont des identificateurs distincts.
Exemple :
— nombre15 , var_1 sont des identificateurs corrects.
— 4a , x-9 sont incorrects.

2.2 Variable
Une variable est constituée de l’association d’un identificateur à une valeur. Cette association
est créée lors de l’affectation, qui s’écrit sous la forme : variable = expression

3 Les entrées/sorties
3.1 Les sorties
print permet d’afficher un nombre quelconque de valeurs, que l’on doit séparer par des
virgules. Par défaut, les différentes valeurs seront séparées par un espace.

Exemple
>>> x = 125
>>> print("La valeur de x est :",x)
La valeur de x est : 125

3.2 Les entrées


input permet d’afficher un message sur l’écran (optionel) et de saisir des informations. elle
renvoie toujours le texte saisi par l’utilisateur sous forme d’une chaine de caractères. Il faudra
donc éventuellement prévoir une conversion à l’aide de l’instruction eval.

Exemple
>>> a = eval(input("Entrez un nombre réel: "))
Entrez un nombre réel: 90.56
>> type(a)
float

4 Structures alternatives
La structure générale d’une instruction conditionnelle est la suivante (il ne faut pas oublier
l’indentation) :

4
Syntaxe
if expression:
[instructions effectuées si expression s’évalue en True]
elif autre_expression:
[instructions effectuées si expression s’évalue en
False et autre_expression en True]
else:
[instructions effectuées si expression et
autre_expression s’évaluent en False]

Les expressions utilisées sont des expressions booléennes : leur évaluation doit produire un
booléen : True ou False.
Voici un exemple, avec note une variable supposée contenir un flottant entre 0 et 20.

Exemple
if note>=16:
print("Mention Très bien")
elif note>=14:
print("Mention Bien")
elif note>=12:
print("Mention Assez bien")
elif note>=10:
print("Mention Passable")
else:
print("Raté !")

5 Structures répétitives
5.1 La boucle while
La boucle while permet de répéter une suite d’instructions tant qu’une certaine condition est
vraie. La structure est la suivante :

Syntaxe
while condition:
[instructions]

Le mécanisme est le suivant : on évalue la condition. Si le résultat est True, on effectue toutes
les instructions du bloc indenté, puis on recommence l’évaluation de la condition. Sinon, on passe
aux instructions situées après la boucle.

5
Exemple
note = float(input("entrez une note entre 0 et 20"))
while note < 0 and note > 20:
print("Erreur")
note = float(input("entrez une note entre 0 et 20"))

Dans l’exemple, tant que l’utilisateur n’a pas renseigné une note entre 0 et 20, le message
d’erreur va apparaitre et il doit rentrer une nouvelle note.

5.2 la boucle for


la boucle for permet d’exécuter un bloc d’instructions un nombre de fois fixé à l’avance,sa
structure est la suivante :

Syntaxe
for i in range(début,fin,pas):
[instructions]

— i : Variable d’itération,peut avoir un nom quelconque.


— début : facultatif,c’est la première valeur que va prendre la variable d’itération, par défaut
cette valeur est 0.
— pas : facultatif, il représente la pas avec lequel la variable d’itération change de valeur, elle
peut être soit un entier positif soit négatif, par défaut cette valeur est 1.
— fin : obligatoire, attention range exclut de la dernière valeur.

Exemple
for i in range(100):
print(i)

le programme ci-dessus va afficher les entiers de 0 jusqu’à 99 (et non pas 100).

Exemple
s = 0
for i in range(10,100,2):
s = s + i
print(s)

Le programme ci-dessus va calculer la somme des entiers paires de 10 jusqu’à 98.

6
6 Les fonctions
Au fur et à mesure que les programmes que l’on écrit deviennent plus volumineux, leur
longueur et leur complexité augmentent. Il devient nécessaire de les structurer, de les découper
en tâches élémentaires pour faciliter leur écriture et leur maintenance.

6.1 Définir une fonction


def nom_fonction(param1,param2....):
instructions
........
return valeur

Exemple
def factorielle(n):
f = 1
for i in range(1,n+1):
f = f*i
return f

6.2 Appeler une fonction


L’appel d’une fonction prend la forme :

nom_fonction(val1,val2....)

Exemple
f = factorielle(5)
print(f) #Affiche 120

6.3 Valeurs par défaut


On peut, à la fin de la suite des arguments,préciser que certains argument ont une valeur par
défaut lorsque cette valeur n’est pas présente dans l’appel de la fonction :

7
Exemple
def somme(a,b=1):
return a+b

s = somme(5,7)
print(s) # Affiche 12

s = somme(6)
print(s) # Affiche 7

6.4 Arguments nommés


Lorsque l’on appelle une fonction, l’ordre dans lequel sont passés les paramètres est impor-
tant, puisque les affectations des noms locaux sont faites normalement dans l’ordre. Ce n’est
pas toujours pratique, car lors de l’appel, on peut avoir oublié dans quel ordre se trouvent les
paramètres. Python fournit un mécanisme intéressant pour simplifier la tâche : on peut placer les
arguments de la fonction dans n’importe quel ordre si l’on indique le nom de l’argument avant
la valeur.

Exemple
s = somme(b=5,a=7)

6.5 Les fonctions anonymes


Le mot-clé lambda en Python permet la création de fonctions anonymes (i.e. sans nom et
donc non définie par def)

# Definition de la fonction :
# f est une fonction d’arguments var1, var2...
# On n’utilise pas "return"
f = lambda var1, var2 ... : instruction

# Utilisation de la fonction
f(val1, val2..)

Exemple
f = lambda x, y : x**y
print(f(3,2)) # affiche 9

You might also like