Vous êtes sur la page 1sur 27

SCIENCES DES DONNÉES APPLIQUÉES (fONDAMENTALES)

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:

• append() adds an element to the end of the list


• extend() adds all elements of a list to another list
• insert() inserts an item at the defined index
• remove() removes an item from the list
• pop() returns and removes an element at the given index
• clear() removes all items from the list
• index() returns the index of the first matched item
• count() returns the count of the number of items passed as an argument
• sort() sort items in a list in ascending order
• reverse() reverse the order of items in the list
• copy() returns a shallow copy of the list
3
5. Les ensembles ou sets Python

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

• add() Adds an element to the set


• clear() Removes all elements from the set
• copy() Returns a copy of the set
• difference() Returns the difference of two or more sets as a new set
• difference_update() Removes all elements of another set from this set
• discard() Removes an element from the set if it is a member. (Do
nothing if the element is not in set)
• intersection() Returns the intersection of two sets as a new set
• intersection_update() Updates the set with the intersection of itself and another
• isdisjoint() Returns True if two sets have a null intersection

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 = (“hotel", 100, 200, "foo")

>>> tuples_are_immutable

('hotel', 100, 200, 'foo')

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

‣ Sélection ou exécution conditionnelle


La plus simple de ces instruc3ons condi3onnelles est l’instruc3on if. Pour expérimenter son
fonc3onnement, veuillez entrer dans votre éditeur Python les deux lignes suivantes :

>>> 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 :

>>> animaux = ["girafe", "Hgre", "singe", "souris"]


>>> for animal in animaux:
... print(animal)
...
girafe
Hgre
singe
souris

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.

for n in range (9):


if n%2 == 0:
print(n, "est un chiffre pair")
else: for n in range (9):
print(n, "est un chiffre impair") if n%2 == 0:
conKnue
else:
print(n)

13
‣ Opérateurs de comparaison

La condi1on évaluée après l’instruc1on if peut contenir les opérateurs de


comparaison suivants :
x == y # x est égal à y >>> a = 7
x != y # x est différent de y >>> if (a % 2 == 0):
x>y # x est plus grand que y ... print("a est pair")
x<y # x est plus petit que y ... print("parce que le reste de sa division par 2 est nul")
x >= y # x est plus grand que, ou égal à y ... else:
x <= y # x est plus petit que, ou égal à ... print("a est impair")

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:

Écrire un programme qui permet de calculer le factoriel des nombres suivants :


5!, 8! ,7!,6!, 11!, 13!, 24!, 25!, 19!

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

Cas 1: dans le même fichier que le programme principal

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

Cas 2: dans un fichier séparé

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 :

Quand vous saisissez autre chose qu’un nombre, une


excep'on de type ValueError est levée

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

Vous aimerez peut-être aussi