0% ont trouvé ce document utile (0 vote)
37 vues19 pages

Chapitre N°2-Ver1 - La Programmation en Python Instructions de Base

Transféré par

houdaboukhari888
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)
37 vues19 pages

Chapitre N°2-Ver1 - La Programmation en Python Instructions de Base

Transféré par

houdaboukhari888
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
Vous êtes sur la page 1/ 19

02/10/2024

FONDEMENTS EN
INFORMATIQUE ET
ALGORITHMIQUE

Année scolaire 2024/2025


Chapitre n°2 : La 1ère Semestre
Programmation En Python :
Instructions de Base. Niveau : CP1

Pr. Abdelhak KADDRI

CH.2 LA PROGRAMMATION EN PYTHON:INSTRUCTIONS DE BASE.

1)Langages de programmation

a) Langages machine

E N S A - M A R R A K E C H
b) Langages de bas niveau/de haut niveau (évolués)
c) Présentation de langage python
d) Utilisation de langage python

2)Données : Variables et constantes

a) Signification d’une variable


2
b) Nommage des variables

c) Types de base en Python

d) Déclaration/initialisation d’une variable et transtypage

3)Les traitements : instructions et opérateurs

a) Instructions d’entrée/sortie

b) Les expressions du calcul (Les opérateurs)

c) Priorité des opérateurs

d) Manipulation des chaines de caractères (str).

1
02/10/2024

C ’ E ST Q U O I L A P R O G R A M M ATI O N ?

• La programmation consiste à expliquer


en détails à une machine ce qu'elle doit

E N S A - M A R R A A K E C H
faire, en sachant qu'elle ne peut pas
véritablement comprendre un
langage humain, mais seulement
effectuer un traitement automatique
sur des séquences de caractères. 3
• Donc la programmation est une phase
qui suit la phase d’algorithmique, elle sert
la traduction (codage) de notre
algorithme (langage humain) en un
programme (langage machine).

LANGAGES MACHINE DE BAS NIVEAU

• Comme déjà vu, les microprocesseurs (fig1) des Fig1

E N S A - M A R R A A K E C H
ordinateurs travaillent sur des données binaires
0/1.
• Alors, le binaire (fig2) est difficilement lisible,
Fig2 4
donc on utilise très souvent la représentation
hexadécimale.
• Les langages assembleurs (fig3) ou langages du
Fig3
bas niveau : sont les plus proches de ce que
comprennent les processeurs, ils représentent les
opérations exécutables et leurs options sous
forme textuelle compréhensible.

2
02/10/2024

LANGAGES ÉVOLUÉS

• Au fil du temps, on avait connu l’invention des

E N S A - M A R R A A K E C H
langages plus évolués avec des syntaxes plus
en plus visible pour l’homme.
• Voici quelques exemples de langages de
programmation (dont vous avez
probablement déjà entendu parler) : 5

• Quelques dates :

Langage Assembleur Basic Pascal C C++ Python Java

Date 1950 1964 1970 1973 1983 1990 1994

P R É S E N TAT I O N D E L A N G A G E

• Créé en 1990 par Guido VAN ROSSUM, PYTHON

E N S A - M A R R A A K E C H
est un langage open source, géré par la
« PYTHON Software Fondation ».
• Multiplateformes et multifonctions : le
programme sera souvent portable, on peut le
faire fonctionner sans aucune modification sur 6
des machines ou des systèmes d'exploitation
différents (versus programme de bas niveau).
• Est un langage interprété et non compilé :
signifie que le code est lu ligne par ligne par
l'interpréteur, et exécuté en temps réel.

3
02/10/2024

U T I L I S AT I O N D E L A N G AG E

• On peut utiliser python depuis une fenêtre de


terminal (ou console) ou bien, on peut passer par un

E N S A - M A R R A A K E C H
environnement de développement (IDE : Interactive
Development Environment),
• Dans tous les cas, il y a deux façons de travailler avec
python :
1. L'interpréteur python appelé aussi Shell : Il 7
permet de saisir des instructions qui sont
immédiatement exécutées, comme sur une
calculatrice.
2. L'éditeur de programmes (ou éditeur de
scripts) : Le programme (aussi appelé script)
devra être enregistré dans un fichier texte
d'extension .py pour qu'il soit reconnu comme
un programme python.

CH.2: LA PROGRAMMATION EN PYTHON INSTRUCTIONS DE


BASE.

1)Langages de programmation
a) Langages machine

E N S A - M A R R A K E C H
b) Langages de bas niveau/de haut niveau (évolués)
c) Présentation de langage python
d) Utilisation de langage python

2)Données : Variables et constantes


a) Signification d’une variable 8
b) Nommage des variables
c) Types de base en Python
d) Déclaration/initialisation d’une variable et transtypage
3)Les traitements : instructions et opérateurs
a) Instructions d’entrée/sortie
b) Les expressions du calcul (Les opérateurs)
c) Priorité des opérateurs
d) Manipulation des chaines de caractères (str).

4
02/10/2024

I N S T R U C T I O N , D O N N É E E T VA R I A B L E ?

• Les instructions d’un programme • Instructions d’un Programme :


X=5
mettent en jeu des données

E N S A - M A R R A K E C H
Y=X+7
(numériques, texte, etc) qui peuvent
print(Y/X)
être saisies par l'utilisateur ou Z=0
restituées d'un calcul de l'ordinateur, Z=Y+X
etc. • La mémoire vive (RAM) : 9

• pour pouvoir réutiliser ces données


Z
au fur et à mesure du programme, Il
X
0 Z
5
est indispensable de les enregistrer
dans la mémoire vive de l'ordinateur . Y
12
• Les espaces mémoire où ces données
sont conservées sont appelés
variables.

C’EST QUOI UNE VARIABLE?


Identifiant : A
Type : Entier
De ce qui précède, une variable est définie à partir Exemple de Programme Valeur : 5
de 3 attributs suivants :

E N S A - M A R R A K E C H
• Son identifiant : c’est le nom de la donnée, Identifiant : B
composé des alphanumériques (A/a à Z/z, 0 à 9 Type : réel
Valeur : 5,0
et _), cet identifiant fait référence dans le
programme à l’adresse de la case mémoire de la
variable. 10
• Son type : c’est la nature de la donnée, peut-être : RAM

texte, nombre, image, booléen, etc. Le type zone mémoire réservée


d’une variable permet de savoir la taille de la case 0000000000000101 à la variable (valeur 5 en
mémoire à lui réserver par le programme. binaire)

• Sa valeur : c’est le contenu représenté par la L’adresse de la


0000000000100100
donnée tel que : 5, « ali », 15.5, « Fatima ». En variable (&A)
langage Python, la valeur affectée à une variable
permet le programme d’en déduire son type.

10

5
02/10/2024

COMMENT CHOISIR UN IDENTIFIANT?

En partie par obligation liée au langage, et en partie par convention pour l'enseignement, un nom
de variable doit :

E N S A - M A R R A K E C H
• Un nom de variable est une séquence de lettres (a → z , A → Z) et de chiffres (0 → 9), et aussi
le tiret _ avec la touche 8.
• Débuter par une lettre ou tiret _,
11
• La casse est significative (maj ≠ MAJ)
• Mots clés du langage interdits (if, else, for, def,...), voir la diapositive suivante.
Une constante est une variable dont la valeur ne doit pas changer au cours de l'exécution du
programme. Par convention, on la nomme en MAJUSCULES.

Attention : Contrairement à d'autres langages, Python n'empêche pas la modification d'une


constante. L'utilisation de la convention avec des majuscules indique aux développeurs qu'il ne
faut pas modifier la variable concernée.

11

FA I T E S AT T E N T I O N AU X M OTS R É S E R V É S !

• Les mots clés réservés du langage ne peuvent pas être utilisés comme nom de variables (car ils
sont déjà réservés par le langage). Ce sont :

E N S A - M A R R A K E C H

12

Attention : Le langage Python fait la distinction entre les majuscules et les minuscules (distinction
de casse), de même qu'entre les caractères avec et sans accent.

12

6
02/10/2024

E X E R C I C E D ’A P P L I CAT I O N N ° 1

• Coucher les bons identifiants parmi le tableau :

E N S A - M A R R A K E C H
1 del
2 Ligne
3 general
4 CP 1 13
5 1erCP
6 année
7 global
8 la_classe
9 Hello word
10 def
11 gmail@com

13

TYPES DE BASE

PYTHON dispose d'un certain nombre de type de données. Nous allons ici voir les principaux.
L'instruction type (maVariable) permet de connaître le type de maVariable.

E N S A - M A R R A K E C H
• Les booléens (bool): Les booléens comme dans tout langage peuvent prendre deux
valeurs uniquement en PYTHON sont True et False.

Exemple : monB=5>2 Donc monB vaut True


14
• Les entiers (int) : L'entier/ Integer est un nombre sans virgule. Il est codé par défaut sur
4 octets avec des valeurs entre -2 147 483 648 et +2 147 483 647. Sinon Python est
chargé de réserver une taille correspondante dont la limite est bornée par la capacité
mémoire de l'ordinateur.

Exemples : N=19823 | M=3428 | X=2345.0 | T="23"


Donc N et M sont des entiers sans X et T.

14

7
02/10/2024

TYPES DE BASE(SUITE)

• Les réels (float) : On utilise le point pour indiquer qu'il s'agit d'un float (par exemple: a =
3. ou a = 3.0 ). Ou bien une écriture scientifique xEn (ou xen) dont x est un int ou float et

E N S A - M A R R A K E C H
n est un int (par exemple : x = 3 . 1 2 e - 3 o u x = 1 e 6 ) .

Remarque : Attention, le caractère de séparation est le point et non la virgule.


Exemples : x=3.0; y=6.5; n=4 ; s=" 3.12e-3" alors n et s ne sont pas de type float.
15
• Les chaînes de caractères ( str) : s’écrivent entre simple ou double cote en PYTHON, au
choix du programmeur.

Exemples : nom=‘ENSA’ ; prenom=‘’CP1’’; note="15.5"


Les complexes(complex) : Python permet aussi de gérer ce type comme étant de base pour les
mathématiciens sous forme de x+yj ou yj+x.
Exemples : y=4j, h=6-7j, k=j, t=2j+1 alors k provoque une erreur car il nous faut k=1j.

15

R É CA P I T U L AT I O N S U R L E S T Y P E S D E B A S E

E N S A - M A R R A K E C H

16

Notez bien : On peut toujours vérifier le type d’une variable ou d’une valeur avec l’instruction “type” :
>>>type(10.5)
<class 'float'>
>>>type("10.5")
<class 'str'>

16

8
02/10/2024

D É C L A R AT I O N / I N I T I A L I S AT I O N
• Dans la plupart des langages de
• Par exemple, en le langage C, on doit écrire :
programmation, pour pouvoir utiliser une
int x ; // déclaration de x comme un nombre

E N S A - M A R R A K E C H
variable, il faut procéder en deux étapes :
entier
a. Déclarer la variable avec un certain
x = 4 ; // affectation de la valeur 4 à la variable
type. x, grâce à l'opérateur d'affectation
b. Lui affecter une valeur. x = 10 ; // réaffectation d'une nouvelle valeur 17
(ici, 10) à cette même variable x.
• En revanche, en Python, il n'est pas
• On ne peut alors affecter que des entiers à la
nécessaire de déclarer explicitement les
variable x. Une instruction comme :
variables en précisant leur type. C’est
l’interpréteur qui s’en charge lors de x = 12.5 ;
l’attribution d’une valeur à notre variable. provoque une conversion de 12.5 (float) en 12
➔C’est le typage dynamique. (int) avec perte d’information après la virgule.
Exemple : y=3j # ici y est de type complex

17

LE TR AN ST Y PAGE DE DO N N É ES( CAST E N AN G LAI S) .


Exemples :
• Mais fait attention au typage fort de langage : >>> a=‘15’

✓ Les opérations possibles sur une variable dépendent intégralement de >>> a+5

E N S A - M A R R A K E C H
son type. TypeError: can only concatenate str (not
"int") to str
✓ Les conversions implicites de types afin de réaliser certaines opérations >>>int(a)+5
sont interdites sauf entre types numériques (int, float et complex). 20
>>> a+str(5)
• En revanche, on peut changer le type d'une donnée en l'indiquant entre
‘155’ 18
parenthèses, précédée du nom du nouveau type souhaité : nomType(data).
>>> int(3.7)

• Ce changement de type est appelé transtypage ou conversion de type 3

explicite. >>> str(3.4)


'3.4'
• Certains transtypages explicites ne sont pas autorisés (la valeur affectée à >>> float("3.4")
la variable ne peut pas être convertie vers le type désiré) : 3.4
>>> bool(0)
>>> int("bonjour") # plus détails sur la diapositive suivante
False
ValueError: invalid literal for int() with base 10: 'bonjour’ >>> int(True)
1

18

9
02/10/2024

LE TR AN ST Y PAGE DE DO N N É ES

Conversions Contraintes

E N S A - M A R R A K E C H
int(data) data est un décimal (qui sera tronqué) ou une chaîne d’un nombre entier

int(data,base) data est une chaîne d’un type numérique codé dans une base

float(data) data est un entier ou une chaîne de nombres


19
data est la partie réelle et y est la partie imaginaire (y=0 par défaut)
complex(data,y)
Ou bien data est une chaîne d’un nombre complexe, sans passer le y

data est un nombre ou un booléen ou une chaine qui vaut False uniquement si
bool(data)
data vaut nombre 0 ou son équivalence comme une chaine vide: "" ou ‘’

str(data) data est un nombre ou un booléen

eval(data) data est une chaîne qui sera évaluée comme une expression en Python

19

E X E R C I C E D ’A P P L I C A T I O N N ° 2

Complétez les vides par les résultats à afficher après l’exécution de chaque instruction :
>>> x = 666.6

E N S A - M A R R A K E C H
>>> a = “0.4+1j” #ici 1 à côté de j est indispensable
>>> y = int(x)
>>> y
……………………………….. 20
>>> eval('y+111’)
………………………………..
>>> int('10101',2)
………………………………
>>>z=x+ complex(a)
…………………………….

Remarque : str (str), bool(bool) , float(float) et int(int) sont valides mais ne sont pas pratiques.

20

10
02/10/2024

CH.2: LA PROGRAMMATION EN PYTHON INSTRUCTIONS DE


BASE.

1)Langages de programmation
a) Langages machine

E N S A - M A R R A K E C H
b) Langages de bas niveau/de haut niveau (évolués)
c) Présentation de langage python
d) Utilisation de langage python

2)Données : Variables et constantes


a) Signification d’une variable 21
b) Nommage des variables
c) Types de base en Python
d) Déclaration/initialisation d’une variable et transtypage
3)Les traitements : instructions et opérateurs

a) Instructions d’entrée/sortie
b) Les expressions du calcul (Les opérateurs)
c) Priorité des opérateurs
d) Manipulation des chaines de caractères (str).

21

INSTRUCTIONS D’ENTRÉE/SORTIE
 L’instruction de sortie: Pour réaliser un Exemple :
affichage sur la console à partir d’un script
• sous l’interpréteur on écrit

E N S A - M A R R A K E C H
(programme), et pour réaliser des affichages plus
sophistiqués on aura besoin de l’instruction >>>a = 5 # affectation directe à la variable
“print” avec la syntaxe suivante :
>>> b = float(a) #cast en float
print(expr_1,expr_2,...,sep=‘ ‘,end=‘\n’)
>>>a, b #affichage des variables
• expr_1,expr_2,... : sont soit des chaînes, 22
soit des résultats de calculs convertis en chaînes, • Son équivalence dans un script ( sous
soit des variables dont on souhaite afficher la l’éditeur) est:
valeur.
a=5
• sep=‘ ‘: le séparateur entre eux, dans ce cas b = float(a)
c’est l’espace. C’est un paramètre optionnel qui
vaut ‘ ‘ par défaut. print("La valeur de a est", a, " et b est",b)

• end=‘\n’: marque de fin d’affichage, dans ce Le résultat de son exécution sera :


cas c’est le retour à la ligne. C’est un paramètre
La valeur de a est 5 et b est 5.0
optionnel qui vaut ‘\n’ par défaut.

22

11
02/10/2024

INSTRUCTIONS D’ENTRÉE/SORTIE

 L’instruction d'entrée input() : permet de Exemple : on reprend le même exemple récemment


récupérer et d'affecter aux variables la saisie de vu, mais au lieu de donner une valeur à la variable a,

E N S A - M A R R A K E C H
l'utilisateur au clavier. Elle renvoie une chaîne de on la demandera à l’utilisateur :
caractères. Si on souhaite obtenir un nombre il
faudra la convertir en type désiré. #lecture de a sous forme d’une chaine de caractère:
a = input("entrez votre nombre")
nomVar = input(expression)
#conversion de a en un entier : 23
• expression : est facultative, elle sert juste à
afficher un message d’interaction avec l’utilisateur a = int(a) # ou bien a=eval(a)
sur la ligne de saisie . #conversion de a en un float dans b :
• Ce que va saisir l’utilisateur sera affecté sous forme b= float(a)
de chaîne de caractère à la variable nomVar. Donc print("La valeur de a est", a, " et b est",b)
il faut deviner une conversion explicite de cette
variable. Notez bien: pour commenter un code on utilise le
caractère ‘#’ suivi de votre commentaire sur ligne.

23

L’ O P É R AT E U R D ’A F F E C TAT I O N :
• Exemples :
• Rappelons qu'en algorithmique, l'opérateur d'affectation est représenté >>> y = 1 - 6
>>> y

E N S A - M A R R A K E C H
par une flèche gauche : x ← expression; et en python x=expression
-5
• expression peut être : une valeur, une autre variable, une expression ou >>> z = y * 5

fonction à évaluer (c.à.d à exécuter ou calculer). >>> z


-25
• L'affectation d’une expression à une variable se fait en deux temps : >>> t = y / z 24

>>> t
1) évaluation (c'est à dire calcul) de l'expression située à droite de
0.2
l'opérateur d'affectation (selon des règles de priorité de calcul
>>> x = 4
correspondant au type des données concernées). >>> x
4
2) rangement du résultat de cette évaluation dans la variable
>>> x = x + 100
(association du nom à la donnée), qui est obligatoirement la partie >>> x
située à gauche de l'opérateur d'affectation. 104

24

12
02/10/2024

A F F E C TAT I O N M U LT I P L E
O P É R AT E U R S D ’ I N C R É M E N TAT I O N / D É C R É M E N TAT I O N

• Exemples :
• Affectation multiple ou parallèle : >>> x,y,z= 1,6.0, 3j

E N S A - M A R R A K E C H
var1, var2, ... = val1, val2, ... >>>x,type(x)
(1, <class ‘int’>)
• Incrémenter une variable : signifie lui ajouter une valeur
>>>y,type(y)
numérique (en général, la valeur 1).
(6.0, <class ‘float'>)
x = x + 1 # on incrémente x de 1 >>>z,type(z) 25
x += 1 # l'opérateur += permet de faire la même chose (3j, <class 'complex’>)

• Décrémenter une variable : signifie lui ôter une valeur >>> t+=1
numérique (en général, la valeur 1). NameError: name 'T' is not defined
>>> x+ = -1
x = x - 1 # on décrémente x de 1
>>> x
x -= 1 # l'opérateur -= permet de faire la même chose
0
Notez bien : pas de x++ ou x-- comme dans certains langages (C, C++, >>> z-=1
Java, …)
>>> z
-1+3j
25

INSTRUCTIONS DU CALCUL
L E S O P É R AT E U R S A R I T H M É T I Q U E S

+ : addition de nombres Exemples :


>>> 3/4
- : soustraction de nombres

E N S A - M A R R A K E C H
0.75
* : multiplication >>> 1/3

/ : division décimale 0.3333333333333333

>>> 2**4
// : quotient d'une division entière 26
16
@ : multiplication matricielle
>>> 9/2
** : élévation à la puissance 4.5

>>> 9//2
% : reste d'une division entière (modulo)
4
+=,-=,... : combinaison d’opérateur arithmétique avec
>>> 9%2
affectation (x/=5 est équivalent à x=x/5).
1

26

13
02/10/2024

INSTRUCTIONS DU CALCUL
L E S O P É R AT E U R S A R I T H M É T I Q U E S

Notez bien : Exemples :


>>> 10+1/1+5
• Les opérateurs multiplicatifs *, / et % ont une priorité supérieure à celle des

E N S A - M A R R A K E C H
16.0
opérateurs additifs + et -. Cela signifie, par exemple, que l'expression a * b + c
>>> 2**3.0
exprime une addition (dont le premier terme est le produit a * b).
8.0
• Si les deux opérandes des opérations +, -, *, ** sont entiers (resp. réels) le >>> 13 / 4

résultat est entier (resp. réel). 3.25 27

>>> 13 // 4
• Si un des deux opérandes est réel, le résultat est réel.
3
• Le résultat de l’opération / est toujours un réel. >>> 13 % 4
1
• Pour l’opération //, si l’un des deux opérandes est un réel, le résultat est la partie
>>> 13 // 4.6
entière du quotient de la division réelle.
2.0

27

INSTRUCTIONS DU CALCUL
LES OPÉRATEURS DE COMPARAISON ET LES BOOLÉENS

• Exemples :
< > <= >= == !=
>>>a=5

E N S A - M A R R A K E C H
inférieur sup inférieur ou égale sup. ou égale égale différent
>>>b=sin(a)

>>>a,b
• Les deux opérateurs : is, is not pour la comparaison d’identité (même objet en
(5, -0.9589242746631385)
mémoire)
>>>a<b
• Le résultat d'une comparaison comme a == b est de type booléen ; ce type ne 28
False
possède que deux valeurs, False (faux) et True (vrai).
>>>a>b
Notez bien : Le résultat d’une expression autre que la comparaison donnera lieu à une True

convention pour que : >>>c=a

>>>c is a
1. l’expression sera tenue pour False les valeurs : None, le zéro de n'importe quel type
True
numérique (0, 0L, 0.0), la chaine de caractères vide et toute structure de données vide
>>>c=sin(a)
(liste, ensemble, table associative, etc.)
>>>c==a
2. Toute autre valeur sera tenue pour True.
False

28

14
02/10/2024

INSTRUCTIONS DU CALCUL
LES OPÉRATEURS DE COMPARAISON ET LES BOOLÉENS

• Exemples :
> < <= >= == !=

E N S A - M A R R A K E C H
>>>a=5
inférieur sup inférieur ou égale sup. ou égale égale différent
>>>b=5.0
>>>a,b
• La règle du plus fort vaut aussi pour les comparaisons : les
(5,5.0)
deux opérandes sont amenés (convertis) à un type commun
29
avant l'évaluation de la comparaison. >>>a==b
True
• Conformément à l'habitude répandue, la priorité des
opérateurs de comparaison est inférieure à celle des >>>c=a
opérateurs arithmétiques. Ainsi, l'expression a == b + c signifie >>>c==a
bien : a == (b + c). True
>>>a==c+b
False

29

INSTRUCTIONS DU CALCUL
LES OPÉRATEURS LOGIQUES ET LES BOOLÉENS

Opérateurs logiques (connecteurs) :

E N S A - M A R R A K E C H
not (négation) and (conjonction) or (disjonction)
a or b est vraie si et seulement si
not a est vraie si et a and b est vraie si et seulement si
au moins une deux expressions a,
seulement si a est fausse a et b sont toutes deux vraies 30
b est vraie

• Notez bien : les opérateurs and et or sont « optimisés » de la manière que dans une expressions le premier
terme « protège » le second comme dans l’exemple suivant :

if (y != 0) and (x / y > M) ...


Si la valeur de 1er opérande est fausse (False) alors l’opérateur and n’évalue pas le 2ème opérande (en évitant la
division par 0).

30

15
02/10/2024

PRIORITÉ DES OPÉRATEURS:


D E P LU S P R I O R I TA I R E ( H AU T ) V E R S L E M O I N S ( B A S )

Operateurs Description
Définition d'une liste, d'un tableau et d'un set ou d'un
(),[],{}
dictionnaire

**

E N S A - M A R R A K E C H
Opérateur d'exponentiation

+x,-x,~x Signes positif, négatif et Opérateur NOT bit à bit.

*,@,/,//,% Multiplication,Multiplication matricielle,Division et Modulo

+,- Addition, Soustraction

<<,>> Décalage de bits vers la gauche, vers la droite

& Opérateur AND bit à bit /Opérateur d'intersection 31


^ Opérateur XOR bit à bit /Opérteur de différence symétrique

| Opérateur OR bit à bit /Opérateur d'union

<,<=,>,>=,==,!=,in,not in,is, is
Comparaison
not

not x Négation booléenne

and « ET » booléen

or « OU » booléen

=
+= -= *= **= Affectation et Opérateurs
/= //= @= %= d'affectations combinés
<<= >>= &= ^= |=

31

E X E R C I C E D ’A P P L I C A T I O N N ° 3

• Ecrivez des commandes en python qui permettent de :

E N S A - M A R R A K E C H
1. D’afficher True si un nombre entier n est pair False si impair
2. D’afficher True si un nombre n est diviseur au même temps
de deux autres nombres x et y False sinon.
32
3. D’afficher True si le produit de deux variables a et b est
positif ou False si négatif sans calcul effectif de produit
4. D’afficher True si un nombre N est multiple d’un des
nombres x et y données

32

16
02/10/2024

MA N IP U LAT IO N D ES C HA IN ES D E C A R AC T ÈR ES ( ST R ) :

• Lecture d’une chaine de caractères : ch=input("entrer une chaine de caractère : ")

E N S A - M A R R A K E C H
• Affichage d’une chaine de caractères : print(ch)
• Accès à un caractère d’une chaine : ch[indice] ( En Python, les indices commencent de 0)
• Pour accéder aux caractères à la fin d'une chaine il est commode d'employer des indices
négatifs, alors :
33
• chaine[-1] est le dernier caractère
• chaine[-2] est l’avant dernier caractère
• ….
• chaine[debut:fin] : renvoi les caractères à partir de debut jusqu’à fin-1. si début et/ou fin ne
sont pas renseignés (chaine[:]) alors il renvoi de 0 jusqu’au dernier élément de la chaine

33

E X E R C I C E D ’A P P L I C A T I O N N ° 4

Si on déclare la commande :
Commande Python Résultat

E N S A - M A R R A K E C H
>>> s = 'Bonjour’
Quels sont les résultats des commandes suivantes : 1- s[:]
2- s[2:]
3- s[:4]
34
4- s[-4]
5- s[-4:]
6- s[:-4]
7- s[3:100]
8- s[-100: 3]
9- s[3:1]

34

17
02/10/2024

Q U ELQ U ES O P ÉR AT EU RS SU R C HA IN ES D E C A R AC T ÈR ES:

• Exemples :
>>>ch1=‘ Bonjour ’

E N S A - M A R R A K E C H
>>>ch2=‘tout le monde’
>>>ch1+ ’ ‘+ch2
Bonjour tout le monde
>>>ch1*2 35
• En Python, il est possible de comparer deux chaînes de
caractères selon l'ordre alphabétique (appelé également BonjourBonjour
ordre lexicographique):
>>>nombre=‘20’
• ‘ Bonjour ’==‘ Bonjour ’ ➔renvoi True
• ‘ Bonjour ’>‘ Bontour ’ ➔renvoi False car ‘t’ >’j’ >>>nombre *5
• ‘ Bonjour ’!=‘ BONJOUR ’ ➔renvoi True
‘2020202020’
• Et aussi il est possible de savoir est ce que une sous-chaine
appartient ou non une autre chaine : >>>int(nombre)*5
• ‘ Bon ’ in ‘ Bonjour ’ ➔renvoi True 100
• ‘ Jour ’ not in ‘ Bonjour ’ ➔renvoi True car J majuscule

35

QUELQUES FONCTIONS SUR CHAINES DE CARACTÈRES:

• Exemples :
>>>ch1=‘Bonjour ’

E N S A - M A R R A K E C H
>>>len(ch1)
7
>>>ord(‘a’), ord(‘A’),
(97, 65)
36
>>> chr(97), chr(65)
• Il existe des fonctions en Python qui permettent de passer des ('a', 'A')
caractères à leur code Unicode et vice-versa : >>>code=ord(ch1[0])
• ord(caractere) : Donne le code Unicode du caractère
>>>code
donné.
• chr(code) : Donne le caractère correspondant au code 66
Unicode donné. >>>chr(code)
'B'

36

18
02/10/2024

MERCI POUR VOTRE

E N S A - M A R R A K E C H
AT T E N T I O N

37

Fin du chapitre n°2

37

19

Vous aimerez peut-être aussi