0% ont trouvé ce document utile (0 vote)
7 vues46 pages

Variables et affectations en Python

Transféré par

fatimaouaaj
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)
7 vues46 pages

Variables et affectations en Python

Transféré par

fatimaouaaj
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

1

 Types intégrés
 Instructions de contrôle
 Fonctions

2
TYPES INTEGRES

3
Les variables fournissent plusieurs représentations et méthodes
de stockage des informations.
Une variable est un emplacement en mémoire principale destiné à
recevoir une donnée réutilisée ultérieurement.

4
Règles à respecter pour les noms de variables
Une séquence de lettres (a → z, A → Z) et de chiffres (0 à 9) qui doit
toujours commencer par une lettre. Le symbole _ est considéré
comme une lettre.
Aucune lettre accentuée, cédille, espace, caractère spécial à l’exception
du caractère souligné _.
Les minuscules et les majuscules sont des lettres différentes.
Exemple :

Variable_entiere, entier1, mot_en_francais sont valides mais 1er_entier,


nom.2, nom de variable, deuxième_entier et a-b ne le sont pas.

5
Syntaxe : identificateur_de_variable = expression

Exemple : >>> entier1 = 8


>>> entier2 = entier1 - 5
>>> entier1 = entier1 + 1
>>> print (entier1, entier2)
93
>>>
But : stocker la valeur d’une expression dans une variable.

Note : Les affectations ne sont pas des expressions; elles n’ont pas de
valeurs inhérentes mais, il est permis d’enchaîner plusieurs affectations.
>>> x = 1
>>> y = x = x + 1
>>> print (x, y)
22
>>>

On ne peut pas écrire : y = (x = x + 1).

6
Affectation
>>> i = 2
>>> message = "Ceci est un message"
>>> valeur_de_pi = 3.14159

Dans le langage Python, ces instructions d’affectation réalisent les


opérations suivantes :
créer et mémoriser un nom de variable,
lui attribuer implicitement un type bien déterminé (entier, réel,
chaîne de caractères, …)
lui associer une valeur particulière,
Établir un lien entre le nom de la variable et l’emplacement
mémoire renfermant la valeur associée.

7
Affichage de la valeur d’une variable
>>> s = "Luc"
>>> entier = 3
>>> reel = 10.2
>>> s Affichage de la chaîne de
'Luc' caractères s.
>>> entier, reel Affichage des variables entier et reel.
(3, 10.199999999999999)
>>> s = 1 Affectation d’une valeur à une
>>> s variable s.
1 Cela signifie que l’ancienne variable s
>>> n’est plus accessible.

On peut aussi utiliser l’instruction print.

>>> chaine = "Oh! la! la!"


>>> indice = 5
>>> print(chaine, indice) Les variables sont séparées par des
Oh! la! la! 5 virgules.

8
Affectations multiples et parallèles

>>> centre_x, centre_y, rayon = 1.0, 0.5, 12 Affectation parallèle


>>> print(centre_x, centre_y, rayon)
1.0 0.5 12
>>> centre_x = centre_y = 0 Affectation multiple
>>> print (centre_x, centre_y, rayon)
0 0 12
>>>

>>> x, y = 10, 20
>>> print (x, y)
10 20 Permutation de variables sans
>>> x, y = y, x utiliser de variable temporaire.
>>> print (x, y)
20 10
>>>

9
Opérateurs et expressions
>>> x, y = 3, 13
>>> x, y = x ** 2, y % x l’opérateur ** d’exponentiation,
>>> print (x, y) l’opérateur modulo % .
91

Priorité des opérateurs


Ordre de priorité : les parenthèses, **, * et /, + et -.
Si 2 opérateurs ont même priorité, l’évaluation est effectuée de gauche
à droite.
>>> x = 5
>>> y = 3
>>> print (x - 1 + y ** 2 * 3 / 6)
8.5
>>>

10
But : L’évaluation d’une expression et une affectation sont combinées.

Exemple : >>> x=5


>>> x **= 2 # Équivaut à x = x ** 2.
>>> x
25
>>> x %= 3
>>> x
1
>>> x //= 2
>>> x
0
>>>

Note : Python ne renferme pas les opérateurs ++ et --.

11
Saisie de données au clavier
La fonction input

Elle invite l’utilisateur à entrer des données au clavier et à terminer avec


<Enter>.

>>> print "Entrez un entier positif :"


>>> n = input()
>>> print "Deux puissance ", n, " donne comme résultat : ", 2**n
Deux puissance 5 donne comme résultat : 32

La fonction input est soit, sans paramètre ou soit, avec un seul paramètre,
une chaîne de caractères, lequel est un message explicatif destiné à
l’utilisateur.

>>> nom = input("Entrez votre nom (entre guillemets) :")


>>> print (nom)

12
On peut saisir plusieurs données simultanément.

>>> t, u, v, w = input().split()
"oui", 34, "non", 59
>>> print (t, u, v, w)
‘" oui ",' ’34’ ‘non’ ’59’

On doit fournir exactement le nombre de données voulues à la saisie.

a, b, c = input().split() # séparation par espace


a, b, c = input().split(",") # séperation par virgule

13
 Tableau (dans un ordre de priorité croissant):

14
 Lors de mélange de types numériques lors d’une
opération, la réponse sera du type de l’opérande la plus
complexe.

 En Python, vrai signifie n’importe quel nombre différent


de zéro ou un objet non vide; faux signifie zéro ou un
objet vide

 Si nous faisons c = d (où c et d sont 2 variables), c


référencera le même objet que d!!

15
Fonctions de types numériques
bool()
Retourne True si l’argument est différent de 0. False autrement.

>>> bool(3.14)
True
>>> bool(0)
False
>>> bool(-3.14)
True
int()
Prend en entrée comme argument une expression
>>> int(3.14)
de valeur numérique ou une chaîne de caractères
3
représentant un entier et retourne le résultat
>>> int(-3.14)
de l’expression où la partie fractionnaire a été
-3
omise ou la chaîne de caractères convertie en
>>> int("3")
entier.
3

16
Fonctions de types numériques

abs()
Retourne la valeur absolue de l’argument. >>> abs(-1 + 0.25)
0.75

pow(m, n) ou pow(m, n, p)
>>> pow(4, 2)
alors (m ** n) % p est retourné; 16
sinon, m ** n est retourné. >>> pow(3, 2, 5)
4

round()
Arrondit un nombre réel à l’entier le >>> round(3.4999999)
plus proche et retourne le résultat 3
comme une valeur réelle. Un 2ième >>> round(2.8)
paramètre présent arrondit l’argument 3
>>> round(253.358901234, 2)
au nombre de décimales indiqué.
253.36

17
 Déf. une chaîne: séquence de caractères non modifiable càd
que si nous avons une chaîne s=‘dalut’, on ne peut pas faire
s[0]=‘s’ mais on devra faire s=‘s’+s[1:] (une réassignation)

 Rq: le type “char” en C est donc représenté par une chaîne de


taille 1

 On ne déclare donc pas la taille de la chaîne et pour


connaître sa longueur on peut utiliser len( ).

18
 Exemple de concaténation
>>> mot = ‘help’ + ‘a
>>>mot
’helpa’
 # pour la répétition:
>>>mot*3
‘helpahelpahelpa’
 Autre manière de faire
>>> ‘help’ ‘a’
‘helpa’
 Rq. on ne peut pas concaténer une chaîne et un nombre avec
‘+’; on doit d’abord utiliser str() pour convertir ce nbr en
string et ensuite concaténer

19
 Représentation d’une chaînes:

 l’indiçage est le fait de sélectionner un élément de la chaîne.


Un indice positif indique que l’on commence à compter par la
gauche et un indice négatif que l’on compte depuis la droite
ex : s[3] donnera e et s[-6] donnera x

 l’extraction est le fait de sélectionner une partie de la chaîne


ainsi, s[2:5] donnera ‘nex’ (le 5 n’est pas compris)

20
 Une valeur laissée vierge prend la valeur 0 à gauche et la taille
de la chaîne à droite (s[:5] => s[0:5] et s[3:] => s[3:len(s)]).

 Un index qui est trop grand est remplacé par la taille de la


chaîne, un index de fin inférieur à l’indice de début retourne une
chaîne vide ( s[1:100] donnera ‘onexemple’ et s[2:1] donnera ‘’).

 Différents exemples:
 >>> s[-2:] # les deux derniers caractères
 >>>’le’
 >>> s[-0] # équivalent à s[0]
 ‘m’
 >>>s[-100] # erreur

21
22
 Ont une même signification qu’en C: une collection d’objets.

 Déclaration: une liste de valeurs (ou éléments) entre crochets séparés


par des virgules. Les éléments de la liste n’ont pas nécessairement le
même type :
 >>>a = [‘spam’, ‘eggs’,100,1234]
 >>>a
[‘spam’, ‘eggs’,100,1234]

 Comme les indices des chaînes, les indices des listes commencent à 0,
et les listes peuvent étre découpées, concaténées…
 Les listes sont modifiables, on peut donc changer les éléments
individuellement: remplacement, destruction,...

23
 >>> a = ['spam', 'eggs', 100, 1234]
 >>> a
 ['spam', 'eggs', 100, 1234]
 >>> a[0]
 'spam'
 >>> a[3]
 1234
 >>> a[-2]
 100
 >>> a[1:-1]
 ['eggs', 100]
 >>> a[:2] + ['bacon', 2*2]
 ['spam', 'eggs', 'bacon', 4]
 >>> 3*a[:3] + ['Boe!']
 ['spam', 'eggs', 100, 'spam', 'eggs', 100, 'spam', 'eggs',
100, 'Boe!']

24
 L = ['abc', [(1,2), ([3], 4)], 5];
 ainsi, L[1] donnera [(1,2),([3],4)] et L[1][1] donnera ([3],4)

25
 insert(i, x)
◦ Insère un élément à une position donnée. Le premier
argument est l'indice de l'élément avant lequel il faut insérer,
donc [Link](0, x) insère au début de la liste, et
[Link](len(a), x) est équivalent à [Link](x).
 append(x)
◦ Equivalent à [Link](len(a), x).
 index(x)
◦ Retourne l'indice dans la liste du premier élément dont
la valeur est x. Il y a erreur si cet élément n'existe pas.
 remove(x)
◦ Enlève le premier élément de la liste dont la valeur est x.

26
 sort()
◦ Trie les éléments à l'intérieur de la liste.
 reverse()
◦ Renverse l'ordre des éléments à l'intérieur de la liste.
 count(x)
◦ Renvoie le nombre de fois que x apparaît dans la liste.

27
 Un exemple qui utilise toutes les méthodes des listes:
 >>> a = [66.6, 333, 333, 1, 1234.5]
 >>> print ([Link](333), [Link](66.6), [Link]('x'))
 2 1 0
 >>> [Link](2, -1)
 >>> [Link](333)
 >>> a
 [66.6, 333, -1, 333, 1, 1234.5, 333]
 >>> [Link](333)
 1
 >>> [Link](333)
 >>> a
 [66.6, -1, 333, 1, 1234.5, 333]
 >>> [Link]()
 >>> a
 [333, 1234.5, 1, 333, -1, 66.6]
 >>> [Link]()
 >>> a
 [-1, 1, 66.6, 333, 333, 1234.5]

28
 Déf. Comme une liste, un tuple est une collection
ordonnée d’objets; mais le tuple n’est pas modifiable .

 Déclaration: des valeurs séparées par des virgules entre


parenthèses
 >>>tuple=(0,1.4,’world’)

 Pourquoi les tuples ??


◦ La non-possibilité de modifier les tuples assure une
certaine intégrité car nous pouvons être sûr qu’un tuple
ne sera pas modifié à travers une référence ailleurs
dans le programme.

29
30
 L'instruction t = 12345, 54321, 'salut!' est un exemple
d'emballage en tuple (tuple packing).

 L'opération inverse est aussi possible, par ex.:


 >>> x, y, z = t
 Ceci est appelé déballage de tuple (tuple unpacking). Le
déballage d'un tuple nécessite que la liste des variables à
gauche ait un nombre d'éléments égal à la longueur du tuple

 Ceci est possible pour les listes en insérant la liste des variables
entre des crochets carrés:
 >>> a = ['spam', 'oeufs', 100, 1234]
 >>> [a1, a2, a3, a4] = a

31
 Un dictionnaire est un ensemble non ordonnés de couples
clé:valeur avec comme contrainte que les clés soient uniques
(dans un même dictionnaire).

 Déclaration: des couples clé:valeur séparés par des virgules et


entre accolades
 >>> dico = {`japon' :'japan', `chine' :'china'}

 Un dictionnaire est indexé par une clé qui peut être n’importe
quel type non-modifiable

32
33
 >>> tel = {'jack': 4098, 'sape': 4139}
>>> tel['guido'] = 4127
>>> tel
{'sape': 4139, 'guido': 4127, 'jack': 4098}
>>> tel['jack']
4098
>>> del tel['sape']
>>> tel['irv'] = 4127
>>> tel
{'guido': 4127, 'irv': 4127, 'jack': 4098}
>>> [Link]()
['guido', 'irv', 'jack']

34
Instruction de contrôle

35
1. Le test if

L’instruction IF peut comporter plusieurs tests


conditionnels ’elif’ et se termine par un bloc optionnel ‘else’. Le
bloc qui sera executé, sera le premier ou la condition sera vrai
sinon se sera le bloc else sans condition qui sera executé.
Le if s’écrit de la forme suivante:

if <test1>:
<instructions>
elif <test2>:
<instructions>
.....
else:
<instructions>
!!! ATTENTION à l’indentation !!!!

36
2. La Boucle While

Comme dans beaucoup d’autres langages, la


boucle while éxecute un bloc tant que la condition
d’arrêt est vérifiée. La particularité de ce while est
qu’il peut y avoir un else optionnel dont le bloc
sera éxecuté lorsqu’on sort de la boucle
while <test> :
<instructions>

else :
<instructions>

37
Un exemple…
X=0
While x<6:
print « Dans la boucle while x vaut : » , x
x=x+1
else:
print « Dans le else x vaut : »,x

38
3. La Boucle For

La boucle for fonctionne sur les chaînes, les listes, les tuples et
d’autes objets issus de classes.

Elle commence par une ligne d’en-tête qui spécifie une cible
d’affectation, ainsi qu’un objet qui sera itéré :
for <cible> in <objet>:
<instructions>
else :
<instructions>
Ici encore, le else est mis en fin de boucle pour la même raison que
dans la boucle while vue précédemment.
Le for de Python fonctionne différemment que celui du C, il affecte
les objets de l’élément séquence à la cible un par un.

39
Exemple :
X={« ichi »: « un », « ni »: « deux », « san »: « trois », « chi »:
« quatre »}
Print « Les clefs du dictionnaire sont : »,[Link]()
Print « Les Valeurs du dictionnaire sont : », [Link]()
For i in [Link]():
print « La clef est : %s la valeur est :%s »%(i,x[i])

40
Le Range
L’instruction range permet de créer une liste croissante d’entiers
successifs compris dans une certaine borne dépendant du nombre de
paramètres de l’instruction :
1 paramètre : entiers compris entre 0 et le paramètre
2 paramètres : entier compris entre param1 et param2
3 paramètres : entier compris entre parm1 et param2 et de pas
param3

Ex : for i in range(10,20,2):
print i
Ce qui donne: 10
12
14
16
18

41
LES FONCTIONS

42
1. Définition
On crée une fonction grâce à l’instruction « def ». Il faudra
bien sur à nouveau veiller à l’indentation car en python, il n’y
pas de délimiteur pour définir les scopes.
format :

def nom_fct (arg1,arg2,…,argn):


<instruction>
return <valeur>

Lorsqu’on quitte la fonction valeur va directement être


assignée à la fonction appelante. Elle peut être de tous type
puisque il n’y a pas de déclaration de type sous python.

43
2. Les arguments…
La forme générale pour passer des arguments est
nom_fct(arg1,arg2,…,argn)

Il est possible de définir des paramètres par défaut pour un ou


plusieurs arguments. Ce qui crée une fonction qui pourra être
appelée avec moins d’arguments que ce qui a été défini.

Ex: def nom_fct (arg1=0, arg2=2,…,argn =« hello world »)


Les fonctions peuvent être appelées en utilisant des arguments
mots-clés de la forme « motclé=valeur »
Ex : def perroquet (voltage, etat=‘c\’est du solide’,action=‘voom’):
print « -- Ce perroquet ne feras pas », action,
print « -- si vou le mettez sous », voltage, « volts. »
print « -- Ca », etat, « ! »
pourrait être appelé de l’une des façons suivantes :
perroquet (1000)
perroquet (action = ‘vooooooom’, voltage = 1000000)

44
Exemple
Exemple

Vous aimerez peut-être aussi