Python Cours

Télécharger au format pptx, pdf ou txt
Télécharger au format pptx, pdf ou txt
Vous êtes sur la page 1sur 98

Langage de programmation

structurée
1.Introduction

2 Mme AHOUDI 16/12/2024


Introduction
Python est un langage de programmation,
dont la première version est sortie en 1991.
Python est un langage puissant, à la fois
facile à apprendre et riche en possibilités
Il existe ce qu'on appelle
des bibliothèques qui aident le
développeur à travailler sur des projets
particuliers.
 Plusieurs bibliothèques peuvent ainsi être
installées pour, par exemple, développer
des interfaces graphiques en Python.
3 Mme AHOUDI 16/12/2024
Introduction
 Concrètement, voilà ce qu'on peut faire avec Python :
de petits programmes très simples, appelés scripts, chargés
d'une mission très précise sur votre ordinateur ;
des programmes complets, comme des jeux, des suites
bureautiques, des logiciels multimédias, des clients de
messagerie…
des projets très complexes, comme des progiciels (ensemble
de plusieurs logiciels pouvant fonctionner ensemble,
principalement utilisés dans le monde professionnel).
 Quelques-unes des fonctionnalités offertes par Python et
ses bibliothèques :
créer des interfaces graphiques ;
faire circuler des informations au travers d'un réseau ;
dialoguer d'une façon avancée avec votre système
d'exploitation ;

4 Mme AHOUDI 16/12/2024


Introduction
Python est un langage de
programmation interprété, c'est-à-dire que les
instructions que vous lui envoyez sont «
transcrites » en langage machine au fur et à
mesure de leur lecture. D'autres langages
(comme le C / C++) sont appelés «
langages compilés » car, avant de pouvoir les
exécuter, un logiciel spécialisé se charge de
transformer le code du programme en langage
machine.
On appelle cette étape la « compilation ». À
chaque modification du code, il faut rappeler une
étape de compilation.
5 Mme AHOUDI 16/12/2024
En résumé
Python est un langage de programmation
interprété, à ne pas confondre avec un
langage compilé.
Il permet de créer toutes sortes de
programmes, comme des jeux, des logiciels,
des progiciels, etc.
Il est possible d'associer des bibliothèques à
Python afin d'étendre ses possibilités.
Il est portable, c'est à dire qu'il peut
fonctionner sous différents systèmes
d'exploitation (Windows, Linux, Mac OS X,…).

6 Mme AHOUDI 16/12/2024


Les variables

7 Mme AHOUDI 16/12/2024


la variable
Le nom de la variable ne peut être composé que de
lettres, majuscules ou minuscules, de chiffres et du
symbole souligné « _ » (appelé under score en
anglais).
Le nom de la variable ne peut pas commencer par
un chiffre.
Le langage Python est sensible à la casse, ce qui
signifie que des lettres majuscules et minuscules ne
constituent pas la même variable (la variable AGE
est différente de aGe, elle-même différente de age).
Il existe différents types de variables, en fonction de
l'information que vous désirez conserver :int,float,
chaîne de caractères etc.

8 Mme AHOUDI 16/12/2024


AFFECTATION
En Python, pour donner une valeur à une
variable, il suffit d'écrire :
nom_de_la_variable = valeur.
Exemple:
mon_age = 21
mon_age
21
mon_age_x2 = mon_age * 2
mon_age_x2
46

9 Mme AHOUDI 16/12/2024


Les fonctions d’entrée/sortie
 La fonction print permet d'afficher la valeur d'une ou plusieurs
variables.
>>> a = 3

>>> print(a)

>>> a = a + 3

>>> b = a - 2

>>> print("a =", a, "et b =",


b)

a = 6 et b = 4

10 Mme AHOUDI 16/12/2024


Les fonctions d’entrée/sortie
input()
 La fonction input est la fonction symétrique à print mais au lieu
d’afficher, elle permet de lire des variables.
 Exemple :

prenom = str(input("Quel est ton prenom ? "))

age = int(input("Quel est ton age ? "))

taille = float(input("Quelle est ta taille ? "))

print ("Bonjour",prenom,"!")

print ("Tu as",age,"ans et tu mesures",taille,"m.")

11 Mme AHOUDI 16/12/2024


Les operateurs arithmétiques
a+b Addition Somme de a et b.

a-b Soustraction Différence de a et b.

a*b Multiplication Produit de a et b.

a/b Division Quotient de a et b.

a//b Division entière

a%b Modulo Reste de a divisé par b.

a ** b Exponentielle Résultat de l'élévation de a à la puissance b.


Opérateurs de raccourcis
Ces opérateurs sont pratiques et ils

facilitent la vie au développeur. La règle est


la suivante :
 variable = variable op expression

S’écrit de manière simplifiée :


 variable op= expression
Les commentaires
 Il suffit pour cela de les faire précéder par « # ».

 Chaque ligne de commentaire doit être précédée par « # »

 Exemple :

 # Ce programme calcule l’hypoténuse c d’un triangle rectangle.

 # a et b sont les mesures des autres côtés du triangle.

 a = 3.0

 b = 4.0

 c = (a**2 + b**2)**0.5 # On utilise ** au lieu de la racine


carrée.
 print("c =", c)
Commentaires
Pour commenter ou dé-commenter un

code, il suffit sélectionner la ou les lignes à


commenter et utiliser le raccourci clavier :
CTRL + « / ».
Pour insérer des commentaires sur

plusieurs lignes, soit on place le « # »


devant chaque ligne de commentaire, soit
on utilise 3 fois les guillemets « """ …. """
15 NTIC 2020-2021

»:
Exercices
 Ecrire un programme qui lit une valeur et qui nous
calcule et affiche l’inverse de cette valeur.

 Le surveillant général d’un établissement scolaire


souhaite qu’on lui écrit un programme qui calcule, pour
chaque élève, la moyenne des notes des cinq matières.
Ces matières sont avec leur coefficient :
MATIERE COEFFICIENT
Math 5
Physique 5
Français 4
Anglais 2
Histoire – Géographie 2
16 Mme AHOUDI 16/12/2024
16/12/2024 Mme AHOUDI
Les conditions
Syntaxe

if condition :
Bloc 1
Else :
Bloc 2
Operateurs de Comparaison

> Strictement supérieur


>= Supérieur ou égal
< Strictement inférieur
<= inférieur ou égal
== égal
!= différent
or ou
and et

19 NTIC 2020-2021
Exemple

a=2 a=2 a = "Bonjour"


b=2 b = 2.0 b = "Bonsoir"

print(a == b) print(a == b) print(a == b)

20 NTIC 2020-2021
Operateurs de Comparaison
 Utiliser les réponses

 Que pouvez-vous faire avec la réponse (c.-à-d. Le

résultat d'une opération de comparaison) que vous


obtenez de l'ordinateur?
 Il y a au moins deux possibilités: premièrement, vous

pouvez le mémoriser (le stocker dans une variable )


et l'utiliser plus tard. Comment tu fais ça? Eh bien,
vous utiliseriez une variable arbitraire comme celle-ci:
 answer = number1>= number2

21 NTIC 2020-2021
Operateurs de
Comparaison
La deuxième possibilité est plus pratique et

beaucoup plus courante : vous pouvez


utiliser la réponse que vous obtenez pour
prendre une décision concernant l'avenir du
programme .
Vous avez besoin d'une instruction spéciale

à cet effet, et nous en discuterons très


bientôt. (les tests)
22 NTIC 2020-2021
If..elif..else
if condition1:
bloc1
elif condition2:
bloc 2
elif:
elif:
.
else:
bloc3
Exercices
1) Ecrire un algorithme qui demande deux nombres à l’utilisateur et
l’informe ensuite si leur produit est négatif ou positif (on laisse de côté
le cas où le produit est nul).

2) Ecrire un algorithme qui demande trois noms à l’utilisateur et l’informe


ensuite s’ils sont rangés ou non dans l’ordre.

3) Étant donnés 2 nombres a et b, déterminer le 3 ème x et écrire


l’algorithme qui résout l’équation du 2ème degré tel que : ax +b
=0

4) Ecrire un algorithme qui saisit 2 nombres, l’un positif et l’autre négatif,


et qui affiche celui qui est positif.

5) Écrire l’algorithme qui lit 3 nombres et qui teste si l’un de ces derniers
est égal à la somme des deux autres. Si un tel nombre existe on
l’affiche, sinon on affiche un message
Mme AHOUDI 16/12/2024
24
16/12/2024 Mme AHOUDI
Les boucles
While..
Syntatxe

While condition :
instructions
#suite de votre
code
Exemple
Exercices 1 :
1.Ecrire un algorithme qui demande à l’utilisateur d’ entrer un mot
de passe. Si le mot de passe égal à « admin » il affiche « connexion
réussie » sinon il affiche « connexion échouée »
2.Ecrire un algorithme qui demande à l’utilisateur un nombre compris
entre 1 et 3 jusqu’à ce que la réponse convienne
3.Ecrire un algorithme qui demande un nombre compris entre 10 et
20, jusqu’à ce que la réponse convienne. En cas de réponse
supérieure à 20, on fera apparaître un message : « Plus petit ! », et
inversement, « Plus grand ! » si le nombre est inférieur à 10.
4.Ecrire un algorithme qui demande un nombre de départ, et qui
ensuite affiche les dix nombres suivants. Par exemple, si l'utilisateur
entre le nombre 17, le programme affichera les nombres de 18 à 27.
5.Ecrire un algorithme qui demande successivement des nombres à
l’utilisateur, et qui lui dise ensuite quel était le plus grand parmi ces
nombres et quel était sa position. La saisie des nombres s’arrête
lorsque l’utilisateur entre un zéro.
EcrireMme
6.27 un AHOUDI
programme qui demande successivement des 16/12/2024
nombres à
l’utilisateur,
16/12/2024
et quiMme
calcule
AHOUDI
leur moyenne. La saisie des nombres
For..
Syntaxe:

For item in
liste
#Les
Exemple :
Instructions Execution
For…
Exemple 2:

Exemple 3(chaines de caractères)


Break Vs continue
break- quitte la boucle immédiatement et
met fin inconditionnellement au
fonctionnement de la boucle; le programme
commence à exécuter l'instruction la plus
proche après le corps de la boucle;
continue- se comporte comme si le
programme avait soudainement atteint la
fin du corps; le tour suivant est commencé
et l'expression de la condition est testée
immédiatement.
Break Vs continue
La fonction range()
Il est possible de créer une boucle
facilement avec range

En précisant les deux bornes inferieure et


supérieure
Exercices 1 :
1. Ecrire un algorithme qui demande un nombre de départ,
et qui ensuite affiche les dix nombres suivants. Par
exemple, si l'utilisateur entre le nombre 17, le programme
affichera les nombres de 18 à 27.
2. Donnez un algorithme pour afficher les dizaines entre 0 et
100. Le résultat affiché sera : 10 20 30 40 50 60 70 80
90 100.
3. Donnez un algorithme pour afficher les dizaines entre 0 et
100 par ordre décroissant. Le résultat affiché sera : 100
90 80 70 60 50 40 30 20 10 0
4. Ecrire un algorithme qui demande un nombre de départ,
et qui calcule la somme des entiers jusqu’à ce nombre. Par
exemple, si l’on entre 5, le programme doit calculer : 1 +
2 + 3 + 4 + 5 = 15
Mme AHOUDI 16/12/2024
33 5. Ecrire
16/12/2024
un programme
Mme AHOUDI
qui demande un nombre de départ,
Exercices 2:
 1) Ecrire un algorithme qui demande un nombre de départ, et qui ensuite
écrit la table de multiplication de ce nombre, présentée comme suit (cas où
l'utilisateur entre le nombre 7) : 7 x 1 = 7
7 x 2 = 14
7 x 3 = 21

7 x 10 = 70
 2) Ecrire un algorithme qui demande successivement 6 nombres à
l’utilisateur, et qui lui dise ensuite quel était le plus grand parmi ces 6
nombres :
Entrez le nombre numéro 1 : 12
Entrez le nombre numéro 2 : 14

Entrez le nombre numéro 6 : 5
Le plus grand de ces nombres est : 14
 3) Modifiez ensuite l’algorithme pour que le programme affiche de surcroît
en quelle position avait été saisie ce nombre :
C’était le nombre numéro 2
34 Mme AHOUDI 16/12/2024
16/12/2024 Mme AHOUDI
Exercices 3:
 Ecrire un algorithme qui :
- lit d’abord une valeur
- ensuite il va lire successivement 10 nombres.
- enfin il va déterminer combien de fois la première valeur a été
saisie (sans compter la première saisie)
 Programme qui demande à l’utilisateur un nombre et qui
affiche un pyramide des étoiles
 Exemple:

35 Mme AHOUDI 16/12/2024


16/12/2024 Mme AHOUDI
Les listes
Les listes
C’est un nouveau type de variable qui peut
contenir des entiers, des flottants, des
chaînes de caractères voire des listes. Il est
naturellement intégré dans python.
Une liste est une collection ordonnée
d’objets python. De même que pour les
chaînes de caractères, la
fonction print() permet d’afficher la liste.
Voici un exemple de liste :
Exemple : Execution
Les listes
La fonction utilisation
Len(list) La longueur de la liste
list.append(x) Ajouter x à la fin de la liste
list.insert(i, x) Inserer l’element x dans la
position i
list.remove(x) Supprimer le premier element x
de la liste
list.pop([i]) Supprimer l’element d’indice i
list.clear() Supprimer tous les elements de
la liste
list.count(x) Retourne le nombre
d’occurrence de x dans list
list.sort(*, key=None, reverse= Trier les element de la liste
False)

list.reverse() Inverser la liste sur place


LES TABLEAUX
Exemple:
EXERCICES
4. Soit T un tableau de vingt éléments de types entiers. Ecrire le
programme qui permet de calculer la somme des éléments de ce tableau.

5. Soit T un tableau de N entiers. Ecrire l’algorithme qui détermine le plus


grand élément de ce tableau.

6. Ecrire un programme qui permet de lire 100 notes et de déterminer le


nombre de celles qui sont supérieures à la moyenne.

7. Soit T un tableau de N entiers. Ecrire l’algorithme qui détermine


simultanément la position du plus grand élément et la position du plus
petit élément du tableau.

8. Soit T un tableau de N réels. Ecrire le programme qui permet de calculer


le nombre des occurrences d’un nombre X (c'est-à-dire combien de fois
ce nombre X figure dans le tableau T).
40 Mme AHOUDI 16/12/2024
16/12/2024 Mme AHOUDI
EXERCICES
9. On dispose des notes de 25 élèves ; chaque élève peut avoir une
ou plusieurs notes mais toujours au moins une. Ecrire un
programme permettant d’obtenir la moyenne de chaque élève
lorsqu’on lui fournit les notes. On veut que les données et les
résultats se présentent ainsi :
Notes de l’élève numéro 1
12
12
-1
Notes de l’élève numéro 2
……
Notes de l’élève numéro 25
15
-1
Moyenne Elève numéro 1 : 11
……
Moyenne Elève numéro 25 : 15
41 Mme AHOUDI 16/12/2024
16/12/2024 Moyenne de la classe : 12.3
Mme AHOUDI
EXERCICES
10. Créez un programme qui crée et initialise
un tableau, puis insère un élément à la
position spécifiée dans ce tableau (de 0 à N-
1).
 Pour insérer un nouvel élément dans le tableau, déplacez les
éléments de la position d'insertion donnée vers une position
vers la droite.
11. Créez un programme qui crée et initialise
un tableau, puis supprimez un élément de ce
tableau à la position spécifiée (de 0 à N-1).
 Pour supprimer un élément du tableau, déplacez les éléments
juste après la position donnée vers une position à gauche et
réduisez la taille du tableau.
EXERCICES
12. Créez un programme qui crée et initialise un tableau,
puis trouve la fréquence de chaque élément de ce tableau.
13. Créez un programme qui crée et initialise un tableau,
puis affichez tous les éléments uniques de ce tableau
Idée: utiliser un tableau de fréquences

14. Créez un programme qui crée et initialise un tableau,


puis comptez les éléments en double dans ce tableau.
15. Créez un programme qui crée et initialise un tableau,
puis supprimez les éléments en double dans ce tableau.
16. Créez un programme qui crée et initialise un tableau,
puis inversez ce tableau sans utiliser un tableau
supplémentaire.
TABLEAUX DEUX
DIMENSIONS
A = [[0 for i in range(N)] for j in range(M)]
for i in range(M):
for j in range(N):
A[i][j] = int(input("Saisir l'élement
A[{0}][{1}]
Exercices
3. Soit T un tableau à deux dimensions de 3 lignes et 4 colonnes.

a. Ecrire un algorithme qui permet de calculer la somme de tous les


éléments du tableau.

b. Ecrire l’algorithme qui permet de compter le nombre des éléments


strictement positifs.

c. Ecrire l’algorithme permettant d’obtenir la somme des éléments


positifs (spos) et la somme des éléments négatifs (sneg) de ce tableau.

d. Ecrire l’algorithme qui détermine la plus grande valeur des éléments


du tableau.

e. Ecrire l’algorithme qui détermine simultanément l’élément le plus


grand du tableau ainsi que sa position.
LES ALGORITHMES DE TRI

46 Mme AHOUDI 16/12/2024


16/12/2024 Mme AHOUDI
TRI PAR BULLES
Tri par sélection
TRI PAR INSERTION
Les fonctions et les
procédures
Syntaxe
La syntaxe Python pour la définition d’une
fonction est la suivante :
def nom_fonction(liste de paramètres): bloc
d'instructions
Exemple: Execution
Syntaxe
1. Définir la fonction « Somme » qu’on lui passe deux valeurs de type
entier et qui renvoie comme valeur la somme des valeurs reçues.

2. Définir la fonction « Absolue » qui renvoie la valeur absolue d’une


valeur qu’on lui passe comme paramètre.

3. Définir la fonction « Inverse » qui renvoie l’inverse d’une valeur


qu’on lui passe comme paramètre.

4. Définir la fonction « Max » qui renvoie le maximum de deux valeurs.

5. Ecrivez un programme qui lit trois scores et qui utilise la fonction


définie dans l’exercice précédent pour déterminer le meilleur score
et l’afficher après.
Les procédures
Sous programme mais sans aucun
retour!!
Exemple Execution
Exercices
 1. Ecrire une procédure qui reçoit la longueur et la largeur
d’une surface et qui affiche la valeur de la surface. Donnez
à cette procédure le nom « Surface ».
 2. Ecrire une procédure qui permet d’échanger les valeurs
de deux variables. Appelez cette procédure « Echanger ».
 3. On dispose d’une phrase dont les mots sont séparer par
des point virgules. Ecrivez une procédure qui permet de
remplacer les points virgules par des espaces. On suppose
qu’on dispose des fonctions suivantes :
Longueur : permet de calculer la longueur d’une
chaîne de caractères.
Utilisation : Longueur (chaîne)
 Extraire : permet d’extraire une partie (ou la
totalité) d’une chaîne.
Utilisation : Extraire (paramètre , position_debut,
longueur)
La procédure Echanger en
python???
Variables locales Vs globales
Exemple Execution
paramètre positionnel Vs
mots-clé
Prenons cet exemple
def soust(a,b) :
print(a,"-",b,"=",a-b)

x=10
y=30
soust(x,y)
soust(y,x)
soust(b=x,a=y)
Vous pouvez mélanger les deux modes si vous le
souhaitez - il n'y a qu'une seule règle incassable:
vous devez mettre les arguments positionnels
avant les arguments mot-clé.
exercices
Quelle est la sortie de l'extrait de code
suivant?

Quelle est la sortie de l'extrait de code


suivant?
exercices
Quelle est la sortie de l'extrait de code
suivant?

Quelle est la sortie de l'extrait de code


suivant?
Exercices
 Définitions :
 On appelle nombre premier tout entier naturel supérieur à 1 qui
possède exactement deux diviseurs, lui-même et l’unité ;
 On appelle diviseur propre de n, un diviseur quelconque de n, n exclu ;
 un entier naturel est dit parfait s’il est égal à la somme de tous ses
diviseurs propres ;
 les nombres a tels que : (a + n + n 2 ) est premier pour tout n
tel que 0 <=n < (a − 1), sont appelés nombres chanceux.

 Écrire un module (parfait_chanceux_m.py) définissant quatre


fonctions : somDiv, estParfait, estPremier, estChanceux et un auto-
test :
 la fonction somDiv retourne la somme des diviseurs propres de son
argument ;
 les trois autres fonctions vérifient la propriété donnée par leur
définition et retourne un booléen. Plus précisément, si par exemple la
fonction estPremier vérifie que son argument est premier, elle retourne
True, sinon elle retourne False.
Liste comme paramètre

12
Fonction retourne une une liste
Les fonctions et les chaines
de caracteres
Print()
 La fonction print() provoque par défaut un retour à
la ligne après affichage des arguments, mais on
peut modifier cela grâce à l’option « end ».

 Exemple 2:

 La fonction print() peut n’avoir aucun


argument, càd que l’instruction print() est
correcte syntaxiquement et elle provoque
naturellement un saut de ligne.
Operations

Opération Operateur Exemple


concatenation + Ab+Ba=AbBa
Duplication * Ab*3=AbAbAb
Les fonctions
Les fonctions
Exercice1
Ecrire une
fonction longueur_chaine(ch)qui recoit en
argument une chaine de caractères ch, et
qui retourne sa taille.?
Ecrire un programme qui permet de :
Saisir au clavier une chaine de caractères
Afficher la taille de cette chaine de
caractères de deux façons :
 avec la fonction longueur_chaine(ch)
 avec la fonction prédéfinie len()
Exercice2
Ecrire une fonction nbr_occurence(ch,e) qui
recoit en arguments une chaine de
caractères ch et un caractère e, la fonction
retourne le nombre d'aoccurences du
caractère e dans la chaine ch.
Ecrire une fonction pr_occurence(ch,e) qui recoit
en argument une chaine de caractères ch et un
ccaractère e, la fonction retourne l'indice positif de
la première occurrence du caractère e s'il existe
dans la chaine ch sinon elle retourne -1
Ecrire un programme qui permet de saisir une
chaine de caractères et un caractère, puis de tester
les fonctions définies dans les questions 1 et 2
Exercice2
 Ecrire une fonction cmp_chaine(ch1,ch2) qui reçoit en
argument deux chaine de caractères ch1 et ch2, la fonction
compare ch1 et ch2et retourne :
 1 si ch1 > ch2
 0 si ch1 = ch2
 -1 si ch1<ch2
 Ecrire une fonction saisir_liste_chaine(n) qui recoit en
argument un entier n et qui retourne une liste de n chaines de
caractères
 Ecrire une fonction trier_liste_chaine(L,n) qui recoit en
argument une liste L de n chaines de caractères alphabétiques,
la fonction trie et retourne la liste Ltriée suivant l'order
alphabétique.
 Ecrire un programme qui permet de saisir un entier n et une
liste de nchaines de caractères, puis de tester les fonctions
définie dans les questions 1, 2 et 3.
La recursivité
Calculer le fatctoriel

Suite de fibonacci!!!!
Les tuples et les dictionnaires
un tuple?
Un tuple est une liste non modifiables
Tupleles parenthèses t1=(1,2,3,4)
Listes les crochets l1=[1,2, 3,4]

T1.append(9) génère une erreur car c’est un


tuple
un tuple?
Tuple vide:
Exemple 1: Exemple2
Exercices
En utilisant un tuple, réalisez une
fonction nom_mois qui à un entier compris
entre 1 et 12 associe le nom du mois
correspondant.
Réalisez une fonction nommée indice qui
renvoie l’indice de la première occurrence
de son premier paramètre dans le tuple
passé en second paramètre, si elle existe.
Par exemple
Un dictionnaire
un dictionnaire n'est pas une liste - une
liste contient un ensemble de valeurs
numérotées, tandis qu'un dictionnaire
contient des paires de valeurs ;
• la len()fonction fonctionne également
pour les dictionnaires - elle renvoie le
nombre d'éléments de valeur-clé dans le
dictionnaire;
• un dictionnaire est un outil à sens
unique - si vous avez un dictionnaire
anglais-français, vous pouvez
rechercher des équivalents français de
termes anglais, mais pas l'inverse
Un dictionnaire
Cela signifie qu'un dictionnaire est un
ensemble de paires clé-valeur .
Remarque:
• chaque clé doit être unique - il n'est
pas possible d'avoir plus d'une clé de
la même valeur;
• une clé peut être des données de tout
type (sauf liste): elle peut être un
nombre (entier ou flottant), voire une
chaîne;
Exemples
Comment parcourir un
dictionnaireboucle
Je dois parcourir les clé

La fonction sorted:


Comment parcourir un
dictionnaireboucle
Items: la methode renvoie des tuples où
chaque tuple est une paire clé-valeur .

values(): fonctionne de manière similaire à


keys(), mais renvoie des valeurs .
modifier et ajouter des
valeurs
Modifier

Ajouter

Ajouter (la fonction update)


modifier et ajouter des
valeurs
Retrait d’une clé

La suppression d'une clé non existante provoque


une erreur
 popitem(): supprimer le dernier element
Exercices
 Soit la liste: L = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
 A partir de L:
Ajouter la valeur 1 à chacun de ses éléments.
Ajouter la valeur 11 à la fin de la liste.
Ajouter les valeurs 12 et 13 à la fin de la liste.
Afficher le premier élément, les deux premiers éléments, le
dernier élément, les deux derniers éléments.
Construire la liste "paires" qui contient les nombres paires
de L et la liste "impaire" qui contient les nombres "impaires"
de L.
Ajouter la valeur 3.5 entre 3 et 4.
Supprimer la valeur 3.5.
Inverser l'ordre des éléments de L.
Demander à l'utilisateur de fournir un nombre au hasard et
dire si ce nombre est présent dans L.
Exercices
Soit le dictionnaire :
d = {'nom': 'Dupuis', 'prenom': 'Jacque',
'age': 30}
Corriger l'erreur dans le prénom, la bonne
valeur est 'Jacques'.
Afficher la liste des clés du dictionnaire.
Afficher la liste des valeurs du dictionnaire.
Afficher la liste des paires clé/valeur du
dictionnaire.
Ecrire la phrase "Jacques Dupuis a 30 ans".
Exercices
Demander à l'utilisateur de fournir un
caractère au hasard et dire s'il s'agit :
D'une lettre minuscule,
D'une lettre majuscule,
D'un chiffre,
D'autre chose.
Les fichiers
Editer un fichier
Pour éditer un fichier en python on
utilise la fonction open .
Cette fonction prend en premier paramètre
le chemin du fichier (relatif ou absolu) et en
second paramètre le type d'ouverture
Chemin relatif / chemin absolu
Un chemin relatif en informatique est un
chemin qui prend en compte
l'emplacement de lecture.
Un chemin absolu est un chemin complet
qui peut être lu quelque soit l'emplacement
de lecture.
La fonction open
Voici la syntaxe pour lire un fichier
>>> fichier = open("data.txt", "r") >>>
print fichier <open file 'data.txt', mode 'r'
at 0x7ff6cf3fe4b0> On remarque que le
deuxième paramètre est renseigné par
un r , ce paramètre indique une ouverture
de fichier
Les types d'ouverture
r, pour une ouverture en lecture (READ).
w, pour une ouverture en écriture (WRITE),
à chaque ouverture le contenu du fichier
est écrasé. Si le fichier n'existe pas python
le crée.
a, pour une ouverture en mode ajout à la
fin du fichier (APPEND). Si le fichier n'existe
pas python le crée.
 b, pour une ouverture en mode binaire.
 t, pour une ouverture en mode texte.
 x, crée un nouveau fichier et l'ouvre pour
écriture
Ecriture et fermeture
Ecriture et fermeture
A noter que pour le monde d'ouverture a ,
si vous voulez écrire à la ligne, vous pouvez
utiliser le saut de ligne \n :
Le mot clé with
Il existe une autre syntaxe plus courte qui
permet de s'emanciper du problème de
fermeture du fichier: le mot clé with .
Voici la syntaxe:
Exercice
Soit un fichier typé intitulé concours.txt qui
comporte les enregistrements relatifs aux candidats
d’un concours. Chaque enregistrement est composé
de : NCIN, NOM, PRENOM, AGE, DECISION :
(type contenant les identificateurs suivants : admis,
refusé, ajourné), et séparé par point virgule (;).
Travail demandé :
Définir la fonction saisir() qui permet de remplir les
données relatives aux candidats dans le fichier
concours.txt
Définir la fonction admis() qui permet créer le fichier
admis.txt comportant les données relatives aux
candidat admis
Exercice
 Afin de sélectionner en priorité les candidats admis et âgés
moins de 30 ans, créer la fonction attente() qui produira à
partir du fichier admis.txt, un nouveau fichier intitulé
attente.txt comportant les données relatives aux candidats
admis et âgés plus que 30 ans.
 Une ligne du fichier attente.txt comprend le NCIN,
le NOM et PRENOM d’un candidat séparés par point virgule (;).
 Définir la fonction statistiques( ) qui permet de retourner le
pourcentage des candidats pour la décision dec (admis,
refusé et ajourné). Exemple :Le pourcentage des candidats
admis = (Nombre des candidats admis / Nombre des
candidats) *100
 Définir la fonction supprimer() qui supprimera du fichier
admis.txt les candidat âgés plus que 30
 N.B : On suppose que les fichiers seront mis à la racine du
lecteur C.

Vous aimerez peut-être aussi