Académique Documents
Professionnel Documents
Culture Documents
Cours 3
• Année : 2022/2023
Responsable Module Mr. Khalid El Fayq • Session : 8 – Hiver 2022
ère • Volume horaire 64
Niveau 4 Année
• Crédits : 4
Filière Génie informatique
1
4. List:
>>> liste1 = [1,"ali",0.12,"omar"]
>>> liste2 = [1,2,3,4]
>>> liste3 = [liste1,liste2]
>>> liste3
[[1, 'ali', 0.12, 'omar'], [1, 2, 3, 4]]
>>> liste1.insert(1,"karimi")
>>> liste1
[1, 'karimi', 'ali', 0.12, 'omar']
Sous Python, on peut définir une liste comme une >>> liste1.remove("omar")
collec5on d’éléments séparés par des virgules, l’ensemble étant >>> liste1
enfermé dans des crochets. Exemple : [1, 'karimi', 'ali', 0.12]
>>> liste1.pop(1)
'karimi'
>>> liste1
[1, 'ali', 0.12]
>>> del liste2[:2]
>>> liste2
[3, 4]
>>> liste2.extend([5,6,7,8,9,10])
>>> liste2
[3, 4, 5, 6, 7, 8, 9, 10]
2
4. List:
Les ensemble ou sets forment un autre type de données composites Python. Un ensemble est une collec8on d’éléments
non ordonnée, sans index et qui ne peut pas posséder l’élément dupliqué.
Une des u8lisa8on les plus courantes des ensembles est de les u8liser pour supprimer des valeurs doublons à par8r d’un
autre type de données.
Pour créer un ensemble, nous allons u8liser une paire d’accolades { } en placer les différents éléments de notre ensemble
entre ces accolades en les séparant avec une virgule.
Notez que pour créer un ensemble vide il faudra u8liser la fonc8on set() car la syntaxe { } va créer un dic8onnaire vide et
non pas un ensemble vide.
>>> tup = {21,36,14,25,20,20}
>>> tup
{36, 20, 21, 25, 14}
>>> tup[2]
Traceback (most recent call last):
File "<pyshell#42>", line 1, in <module>
tup[2]
TypeError: 'set' object is not subscriptable
>>> tup2 = set()
>>> tup2
4 set()
5. Les ensembles ou sets Python
5
6. Dic&onnaires Python
Les dic'onnaires sont un type na'f de données Python. Ce type de données peut, de la même façon que les données
séquen'elles, contenir plusieurs valeurs et chaque valeur va être indexée ce qui signifie qu’un indice unique va être
aAribué à chaque valeur.
Les dic'onnaires nous laissent une bien plus grande liberté ici puisqu’on va pouvoir choisir nous mêmes nos clefs (ou index
ou indice) et aAribuer la clef de notre choix à chaque valeur à par'r du moment où ceAe clef n’est pas déjà u'lisée dans ce
dic'onnaire et où la clef est une valeur immuable.
Pour créer un nouveau dic'onnaire, nous allons devoir u'liser un couple d’accolades { } et définir les paires clef : valeur à
l’intérieur des accolades comme ceci :
>>> ani1 = {}
>>> ani1["nom"] = "girafe"
>>> ani1["taille"] = 5.0
>>> ani1["poids"] = 1100
>>> ani1 {'nom': 'girafe', 'taille': 5.0, 'poids': 1100}
6
7. Tuple Python
Un tuple est similaire à une liste en ce sens qu'il s'agit d'une séquence ordonnée d'éléments. Cependant, les
tuples ne peuvent pas être modifiés une fois créés (ils sont "immuables"). Les tuples sont créés en plaçant des
valeurs séparées par des virgules entre parenthèses ().
>>> tuples_are_immutable
7
EXERCICES
• Écrire un programme qui demande de l'u2lisateur de saisir une liste d'en2ers, puis à l'aide de
parcours successifs de la liste effectue les ac2ons suivantes:
1. Affiche la liste
2. Affiche la liste en colonne de manière à afficher l'index et sont contenu
3. Addi2onne tous les éléments de la liste.
4. Crée une nouvelle liste qui sera le mul2ple (3) de tous les éléments de la liste.
5. Obtenir le plus grand nombre de la liste.
6. Obtenir le plus pe2t nombre de la liste.
7. Compte le nombre des nombres pairs présents dans la liste
8. Calcule la somme de tous les nombres impairs de la liste
8
8. Les structures condi3onnelles if, if…else et if…elif…else en Python
>>> a = 0
>>> if a > 0 :
... print("a est posi3f")
elif a < 0 :
... print("a est néga3f")
else:
... print("a est nul")
9
9. La boucle While
Comme dans beaucoup d’autres langages, la boucle while exécute un bloc tant que la condi:on d’arrêt est vérifiée.
Sa syntaxe est la suivante
>>> i = 1
>>> while i <= 4:
... print(i)
... i = i + 1
...
1
2
3
4
10
10. La boucle for
La boucle Python for possède une logique et une syntaxe différente de celles des boucle for généralement
rencontrées dans d’autres langages.
En effet, la boucle for Python va nous permettre d’itérer sur les éléments d’une séquence (liste, chaine de caractères,
etc.) selon leur ordre dans la séquence.
La condition de sortie dans cette boucle va être implicite : on sortira de la boucle après avoir parcouru le dernier
élément de la séquence.
La syntaxe de cette boucle va être la suivante :
11
11. La fonc+on range()
On va pouvoir u*liser la fonc*on range() pour itérer sur une suite de nombres avec une boucle for.
Ce:e fonc*on permet de générer une suite de valeurs à par*r d’une certain nombre et jusqu’à un autre avec un
certain pas ou intervalle.
Dans son u*lisa*on la plus simple, nous allons nous contenter de passer un nombre en argument (entre les
parenthèses) de range(). Dans ce cas, la fonc*on génèrera une suite de valeurs de 0 jusqu’à ce nombre – 1 avec un
pas de 1. range(5) par exemple génère les valeurs 0, 1, 2, 3 et 4.
Si on précise deux nombres en arguments de ce:e fonc*on, le premier nombre servira de point de départ pour la
généra*on de nombres tandis que le second servira de point d’arrivée (en étant exclus). range(5, 10) par exemple
permet de générer les nombres 5, 6, 7, 8 et 9.
Finalement, on peut préciser un troisième et dernier nombre en argument de range() qui nous permet de préciser
son pas, c’est-à-dire l’écart entre deux nombres générés. Ecrire range(0, 10, 2) par exemple permet de générer les
nombres 0, 2, 4, 6 et 8.
On va pouvoir u*liser la fonc*on range() plutôt qu’une variable de type séquence avec nos boucles for pour itérer sur
une suite de nombres.
>>> for i in range(4):
... print(i)
...
0
1
2
12 3
12. Les instruc/ons break et con/nue
Les instructions break et continue sont deux instructions qu’on retrouve dans de nombreux langages et qui sont
souvent utilisées avec les boucles mais qui peuvent être utilisées dans d’autres contextes.
L’instruction break permet de stopper l’exécution d’une boucle lorsqu’une certaine condition est vérifiée. On l’inclura
souvent dans une condition de type if.
Par exemple, on va pouvoir stopper l’exécution d’une boucle lorsqu’une variable contient une valeur en particulier.
13
‣ Opérateurs de comparaison
14
Le module random
15
Le module random
Exemple:
16
EXERCICES
1-Ecrire un programme qui demande un nombre en2er et d'afficher si pair ou impair.
2-Ecrire un programme qui demande deux réels et renvoie-leur maximum.
3-Ecrire un programme qui lit la moyenne d'un élève et affiche le message "Réussi" si
sa moyenne>=10, dans le cas contraire affiche le message "Non Réussi".
4-Ecrire un algorithme qui donne l’état de l’eau selon sa température :
- Si T < =0 : c'est de la glace.
- Si T > 100 : c'est de la vapeur.
- Si 0 < T < 100 : c'est du liquide
17
Ac%vité 1:
18
19
Les fonc'ons et les procédures en Python
- Fonc'on: Bloc d’instruc/ons nommé et paramétrées réalisant une certaine tâche. Elle admet zéro, un ou plusieurs
paramètres et renvoie toujours un résultat
- Procédure : bloc d’instruc/ons nommé et paramétrées réalisant une certaine tâche . Elle admet zéro, un ou plusieurs
paramètres mais ne retourne pas de valeur
20
1. Exemple d’une procédure
21
2. Exemple d’une fonc1on
22
3. Où est ce qu’on écrit les fonc5ons et les procédures
Dans un script, la défini1on des fonc1ons et des procédures doit précéder leur u1lisa1on.
23
2. Où est ce qu’on écrit les fonc5ons et les procédures
Dans un script, la défini1on des fonc1ons et des procédures doit précéder leur u1lisa1on.
24
Ges&on des excep&ons
Les excep'ons sont les opéra'ons qu’effectue un interpréteur ou un
compilateur lorsqu’une erreur est détectée au cours de l’exécu'on d 'un
programme.
En règle générale, l’exécu'on du programme est alors interrompue, et un
message d’erreur plus ou moins explicite est affiché.
Exemple :
Quand vous entrez un nombre, tout se déroule
normalement :
25
Ges&on des excep&ons
- Il est possible de gérer les excep1ons pour éviter l'arrêt brutal du programme.
- On u1lise conjointement les instruc1ons try et except.
- L'instruc1on else est op1onnelle :
26
Ges&on des excep&ons
27