0% ont trouvé ce document utile (0 vote)
15 vues52 pages

Structures de Base de Python en 2023

Transféré par

d.laichi9445
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
15 vues52 pages

Structures de Base de Python en 2023

Transféré par

d.laichi9445
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Royaume du Maroc

Université Cadi Ayyad


Faculté des Sciences Semlalia
Marrakech

Partie 2: Programmation Python


CHAPITRE 1
Les Structures de Base de Python
Module : Informatique 1 : Algorithmique 1/Python

Pr. Mariya OUAISSA


E-mail : [Link]@[Link]
Département : Informatique FSSM
1
Année Universitaire : 2023/2024
Les structures de
base de python

2
Python

Python est un langage de programmation Open


Source, orienté objet, de haut niveau. Il fut créé en 1991
par le développeur Guido Van. Il s’agit d’un langage
généraliste c’est-à-dire qu’il peut être utilisé pour
développer à peu près n’importe quoi, grâce à de
nombreux outils et bibliothèques.
3
POURQUOI PYTHON ?

● Facile à apprendre - le temps nécessaire pour apprendre Python est plus


court que pour de nombreux autres langages
● Facile à utiliser pour écrire de nouveaux logiciels - il est souvent possible
d'écrire du code plus rapidement en utilisant Python
● Facile à comprendre - il est aussi souvent plus facile de comprendre le code
de quelqu'un d'autre plus rapidement s'il est écrit en Python
● Facile à obtenir, installer et déployer - Python est gratuit, ouvert et
multiplateforme;

4
La programmation et les types de programmes

5
Programmation
• Langage machine : directement compréhensible par la
machine
• Langage de programmation : doit être compilé ou interprété
pour être compris par la machine.

On peut distinguer deux grands types de langages :

• langages interprétés : Java (+ JavaScool) et Python ;


• langages compilés : C, C++, Pascal et OCaml.
6
Langage compilé

● Dans ces langages, le code source (celui que vous écrivez) est tout d'abord
compilé, par un logiciel qu'on appelle compilateur, en un code binaire qu'un
humain ne peut pas lire mais qui est très facile à lire pour un ordinateur.
C'est alors directement le système d'exploitation qui va utiliser le code
binaire et les données d'entrée pour calculer les données de sortie :

7
Langage compilé

Avantages Inconvénients
• Programme immédiatement disponible • Non multi-plateforme
à démarrer • Nécessite des étapes supplémentaires
• Plus rapide, car il est optimisé pour le pour tester
CPU 8
• Le code source est privée
Langage interprété
● Dans ces langages, le code source (celui que vous écrivez) est interprété,
par un logiciel qu'on appelle interpréteur. Celui-ci va utiliser le code source
et les données d'entrée pour calculer les données de sortie :

● L'interprétation du code source est un processus « pas à pas » :


l'interpréteur va exécuter les lignes du code une par une, en décidant à
chaque étape ce qu'il va faire ensuite.

9
Langage interprété

Avantages Inconvénients
• Multi-plateforme • Requiert un interpréteur
• Simple à tester • Pour chaque exécution, le programme
• Facile à débugger doit être interprété préalablement
• Code source public ( Communauté
open source )
10
Structures de données

Variables

Affectation de données

Types de données

Opérations

Affichage/Ecriture
11
Convention de nommage

Pas de caractères Ne pas Utiliser des


spéciaux (ex: Pas d’espace commencer
@ge) par un chiffre underscores(_)

Utiliser des noms qui puissent


Eviter les mots
directement commenter votre code (ex:
réservés par Python
Note_Stagiaire)

12
13
14
Une Variable

● Est un nom qui sert à réserver un emplacement


de la mémoire destinée à recevoir une valeur (Donnée)

● Une variable dans Python est constituée de trois éléments : son nom, son
type et sa valeur
○ En python, on déclare les variables, il suffit de préciser son nom et sa
valeur on dit que python est un langage à type dynamique

● Pour modifier la valeur d’une variable=>Il suffit simplement d’assigner


une nouvelle valeur à la variable.
15
16
1. # Écrivez votre code ci-dessous!
L'INSTRUCTION 2. A = 5
D ’A FFEC TAT IO N
3. B = 3
4. C = A + B
L'instruction d’affectation permet d'attribuer une
5. A = 3
valeur (non définitive) a une variable déclarée.
L’affectation s’effectue en utilisant le symbole ( = ). 6. B = C – 2
spam = 5 7. print " A = ", A
ping = 9 8. print " B = ", B
• O n peut affecter a une variable le contenu 9. print " C = ", C
d'une autre variable
spam = ping
• O n peut incrémenter la valeur d'une
même variable sans utiliser une deuxième
A=3
variable B=6
spam = spam + 1
C=8
17
1. # Écrivez votre code ci-dessous!
L'INSTRUCTION
2. A = 5
D ’A FFEC TAT IO N
3. B = A + 4
4. A = A + 1
L'instruction d’affectation permet d'attribuer une
5. B = A - 4
valeur (non définitive) a une variable déclarée.
L’affectation s’effectue en utilisant le symbole ( = ). 6. C = A – B
7. Print " A = ", A
spam = 5
ping = 9 8. print " B = ", B
9. print " C = ", C
• O n peut affecter a une variable le contenu
d'une autre variable
spam = ping A= 6
• O n peut incrémenter la valeur d'une même B=2
variable sans utiliser une deuxième variable
C=4
spam = spam + 1

18
Les types de données en Python
● Un type de données est simplement une façon de classer différents types de
variables. Quand vous avez un fruit, vous pouvez le classer dans un type spécifique
comme pomme ou orange par exemple. Quand vous avez une variable, l’ordinateur
doit la classer dans un type spécifique aussi : un type de données.

Les types de données les plus simples, ou primitifs, utilisés dans Python sont :
○ int : Les entiers (Integers en anglais)
○ float: Les virgules flottantes (Float en anglais)
○ str :Les chaînes de caractères (Strings en anglais)
○ bool : Les booléens
19
Les types de variables

Donner un type à une variable consiste à définir l’ensemble des valeurs que peut
prendre cette variable ainsi que les opérations qui peuvent lui être appliquées
• Types numériques:
• Booléen : True ou False
• Entier : -32 768 à 32 767
• Réel : -1,79x1038 à 1,79x1038
• Types caractères
• Un caractère peut être une lettre (a à z ou A à Z) ou bien un symbole (+,&,$,#) ou encore un chiffre
(0 à 9)
• Types chaines de caractères:
• Une chaine de caractères est une suite finie de caractère (a à z ou A à Z) ou bien des symboles
(?,!,@,_) ou encore des chiffre de 0 à 9

20
Types de données en Python
● Pour afficher le type de la variable : type(nom_variable)
● Pour détruire une variable : del nom_variable

21
Les opérations sur les types numériques
● Tout comme les nombres dans Excel ou avec une calculatrice, vous pouvez réaliser toutes
sortes d’opérations arithmétiques avec des entiers et des virgules flottantes dans Python:

○ x + y : la somme de x et y (x plus y).


○ x - y : la différence entre x et y (x moins y).
○ x * y : le produit de x et y (x fois y).
○ x / y : le quotient de x et y (x divisé par y).
○ x % y : le reste de x divisé par y (le reste de la division entière).
○ x**y : x à la puissance y
○ x//y : la division entière de x sur y

● Les symboles +, -, *, /, **, // et % sont appelés opérateurs, car ils réalisent des opérations
sur les variables.

22
Opérateurs de raccourcis
● Très souvent, nous voulons utiliser une seule et même variable à la fois à droite et à
gauche de l'opérateur = .
● Par exemple, si nous devons calculer une série de valeurs successives de puissances de 2 :
x=x**2
● Python vous offre une manière raccourcie d'écrire des opérations comme celle-ci, qui
peuvent être codées comme suit: x**=2
● Si op est un opérateur à deux arguments (c'est une condition très
importante) et l'opérateur est utilisé dans le contexte suivant:
variable = variable op expression
● Il peut être simplifié et illustré comme suit:
○ variable op= expression
● L’opérateur += effectue une addition puis affecte le résultat à la même variable. Cette
opération s’appelle une « incrémentation».
● Les opérateurs -=, *= et /= se comportent de manière similaire pour la soustraction, la
multiplication et la division. 23
Opérateur de raccourcis

24
Opérations sur les chaînes de caractères

● Pour les chaînes de caractères, deux opérations sont possibles, l’addition et la


multiplication :

● L’opérateur d’addition + concatène (assemble) deux chaînes de caractères.


● L’opérateur de multiplication * entre un nombre entier et une chaîne de caractères duplique
(répète) plusieurs fois une chaîne de caractères.

25
Operateurs de chaine – Réplication/duplication

26
Les conversions
Les fonctions int(), float() et str() permettent de convertir un nombre quelconque ou une
chaîne de caractères respectivement en un entier (arrondi), en un nombre réel et en chaine
de caractère.

Il peut arriver que la conversion en un nombre entier ne soit pas directe. Dans l’exemple qui suit, on
cherche à convertir une chaîne de caractères en entier mais cette chaîne représente un réel. Il faut
d’abord la convertir en réel puis en entier, c’est à ce moment que l’arrondi sera effectué.
i = int ("3.5") # provoque une erreur
i = int (float ("3.5")) # fonctionne
27
Opérations sur les chaînes de caractères - Application
x = int(1) # x will be 1
y = int(2.8) # y will be 2
z = int("3") # z will be 3
x = float(1) # x will be 1.0
y = float(2.8) # y will be 2.8
z = float("3") # z will be 3.0
w = float("4.2") # w will be 4.2
x = str("s1") # x will be 's1'
y = str(2) # y will be '2'
z = str(3.0) # z will be '3.0'
28
L’affichage

29
La fonction print()
● la fonction print() affiche l’argument qu’on lui passe entre parenthèses et un retour à ligne.
● Ce retour à ligne supplémentaire est ajouté par défaut. Si toutefois, on ne veut pas afficher ce retour à
la ligne, on peut utiliser l’argument par « mot-clé » end :

● Une autre manière de s’en rendre compte est d’utiliser deux fonctions print() à la suite. Dans la portion
de code suivante, le caractère « ; » sert à séparer plusieurs instructions Python sur une même ligne :

30
La fonction print()

● La fonction print() peut également afficher le contenu d’une variable quel que soit son
type. Par exemple, pour un entier :

● Il est également possible d’afficher le contenu de plusieurs variables (quel que soit leur
type) en les séparant par des virgules :

Pour afficher plusieurs éléments de texte sur une seule ligne,


nous avons utilisé le séparateur « , » entre les différents
éléments,
31
La fonction print()
● Python a également ajouté un espace à chaque fois que l’on utilisait le séparateur « , ». On
peut modifier ce comportement en passant à la fonction print() l’argument par mot-clé sep
:

● Pour afficher deux chaînes de caractères l’une à côté de l’autre, sans espace, on peut soit
les concaténer, soit utiliser l’argument par mot-clé sep avec une chaîne de caractères vide :

32
33
Lecture

34
La fonction input()

● La fonction input() est capable de lire les données saisies par l'utilisateur et de
renvoyer les mêmes données au programme en cours d'exécution.

● Le programme peut manipuler les données, rendant le code vraiment interactif.

● Pratiquement tous les programmes lisent et traitent les données. Un programme


qui n'obtient pas l'entrée d'un utilisateur est un programme sourd .
35
input Chaîne de
caractère

36
La fonction input()
● Jetez un œil a notre exemple:

• Le programme précédant invite l'utilisateur a saisi certaines données depuis la console (très probablement a
l'aide d'un clavier.
• La fonction input() est invoquée sans arguments (c'est la manière la plus simple d'utiliser la fonction); la
fonction bascule la console en mode d'entrée ; vous verrez un curseur clignotant, et vous serez en mesure de
saisir quelques frappes, en appuyant sur la touche Entrée ;
• Toutes les données saisies seront envoyées a votre programme via le résultat de la fonction; 37
La fonction input()

● vous devez affecter le résultat à


Remarque
une variable, Ceci est crucial -
manquer cette étape entrainera la
perte des données saisies;

● Puis nous utilisons la fonction


print() pour afficher les données
obtenues

38
La fonction input()

● La fonction input() peut faire autre chose: elle peut inviter l'utilisateur a saisir son
entrée sans aucune aide de print().
● Nous avons un peu modifie notre exemple, regardez le code:

• la fonction input() est appelée avec un argument -


c'est une chaîne contenant un message;
• le message sera affiché sur la console avant que
l'utilisateur ait la possibilité d'entrer quoi que ce
soit; input() va ensuite lire le texte saisie et
l’affecter à la variable anything.
• Cette variante de l’invocation de input() simplifie le
code et le rend plus clair.

39
40
Conversion des types de variables

41
42
4
Cette valeur peut
La fonction input() 3
alors être assignée à
une variable
Lorsque cette touche
quelconque.
est enfoncée,
2 l'exécution du
L'utilisateur est
programme se poursuit,
invité à entrer des
1 et la fonction fournit en
caractères au clavier
Cette fonction retour une valeur
et à terminer avec
provoque une correspondant à ce que
<Enter>.
interruption dans le l'utilisateur a entré.
programme
courant.

On peut invoquer la fonction


input() en laissant les
parenthèses vides. On peut
aussi y placer en argument un
message explicatif destiné à
l'utilisateur. Exemple : 43
La fonction input() – type casting
● Python propose deux fonctions simples pour spécifier un type de données et résoudre ce problème :
int()et float().
● Leurs noms sont auto-commentés:
o La fonction int() prend un argument (par exemple, une chaîne:) int(string)et essaie de le
convertir en un entier;
o La fonction float() prend un argument (par exemple, une chaîne:) float(string)et essaie de le
convertir en float

44
La fonction input() – type casting

● Les fonctions print()-input()- int()- float() et srt() ouvre beaucoup


de nouvelles possibilités.
➢ Vous pourrez éventuellement écrire des programmes complets,
accepter des données sous forme de nombres, les traiter et
afficher les résultats.

45
Quelques fonctions importantes
round(5.76543, 2)
➢ Pour préciser le nombre de digits à afficher après la virgule
Type(variable)
➢ Pour afficher le type de donnée de cette variable
a = "Hello, World!"
print(len(a))
➢ Afficher le nombre de lettre de cette chaîne
txt = "The best things in life are free!"
print("free" in txt)
➢ On cherche le mot free dans la chaîne txt et l’instruction suivante fait
l’inverse
print("expensive" not in txt) 46
Manipuler les chaînes de caractères

47
1. # La sortie sera le nombre de lettres
en "Norwegian Blue"!
2. parrot = "Norwegian Blue"
Commençons par la plus simple 3. print len (parrot)
len (…), qui obtient la longueur
(le nombre de caractères) d'une
chaîne!

14
Changer la casse : upper / lower /

‘’Bonjour’’.upper() #majuscule

‘’Bonjour’’.lower() #minuscule
Utilisée pour unifier la recherche d’un
utilisateur et sans prendre en compte
si les lettres sont en maj ou min

‘’bonjour tous le monde !’’.capitalize() #mettre un majuscule au début de la phrase

‘’bonjour tout le monde !’’.title() #mettre un majuscule au début de chaque mot

Utilisées si vous voulez s’assurer que


chaque phrase contient un majuscule
au début d’un livre ou les majuscules
des mots qui composent les titres
49
Remplacer des éléments dans les chaines de caractères

‘’Bonjour’’.replace(‘’jour’’,’’soir’’) #remplacer le 1r argument par le 2eme


‘’Bonjour bonjour’’.replace(‘’jour’’,’’soir’’) # ça marche sur toutes les occurrences de jour
‘’Bonjour bonjour’’.replace(‘’ ’’,’’’’) # ça marche pour les espace

‘’Bonjour bonjour’’.replace(‘’jour’’,’’soir’’).replace(‘’ ’’,’’’’)


# on peut faire plusieurs remplacement dans la même chaîne

50
COMMENTAIRES

51
# Écrivez votre commentaire ici
COMMENTAIRES # Écrivez un autre

Les commentaires rendent votre programme plus facile à " " " Siégeant de ta tasse jusqu'à ce que ça
[Link] vous regardez votre code ou que coule,
d'autres veulent collaborer avec vous, ils peuvent lire vos Saint Graal.
commentaires et facilement comprendre ce que fait
votre code. """
• Le signe # est pour les [Link] commentaire
est une ligne de texte que Python n'essaiera pas
d'exécuter en tant que code. C'est juste pour les
humains à lire. Exécute
• Vous pouvez écrire un commentaire multi-ligne,en
commençant chaque ligne avec #, cela peut être une
douleur.

• Au lieu de cela,pour les commentaires sur plusieurs


lignes,vous pouvez inclure le bloc entier dans un
ensemble de guillemets (" " " )

Vous aimerez peut-être aussi