2.1. Les variables informatiques#

2.1.1. Première approche#

En Python, une variable est un identifiant (une étiquette). L’action d’associer une variable et un contenu s’appelle l’affectation.

On peut représenter les affectations avec des flèches.

        flowchart LR
    A(a) --> B(1)
    C(b) --> B(1)
    D(c) --> E(2)
    

Par exemple,

var = expression

est une instruction et expression peut-être un calcul, ou le résultat d’une fonction.

Connaître l’état interne des variables est une opération essentielle. Pour cela, on peut compléter le tableau des variables qui va expliciter la valeur prise par chaque variable.

Exemple

On considère la suite d’instruction suivante

a = 5
b = 8
a = b + a
b = a*b

E

a

b

1

5

2

5

8

3

13

8

4

13

104

Un tel tableau permet aussi de comprendre ce qui se passe lorsqu’on cherche à utiliser une variable à laquelle aucune valeur n’a été affecté.

Exemple

On considère la suite d’instruction suivante

a = 5
b = 8
a = c + a

E

a

b

1

5

2

5

8

Comme c n’existe pas, on obtient alors le message NameError: name 'c' is not defined.

2.1.2. Typage des variables#

En informatique, on manipule des données de nature plus ou moins différente. La nature des données (et des variables associés) s’appelle le type. Le tableau ci-dessous donne un aperçu des types élémentaires.

type(True)
bool
type(False)
bool
type(1)

int

type(1.5)

float

type('a')

str

Au type d’une variable correspond des propriétés et des opérations possibles. Ainsi, il est possible de transformer «simplement» un int en float pour effectuer le calcul

1 + 1.5
2.5

mais en revanche, il n’est pas possible de d’additionner un int et un str.

'a' + 1
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
Cell In[5], line 1
----> 1 'a' + 1

TypeError: can only concatenate str (not "int") to str

2.1.3. Évaluation des opérations de comparaison#

On a vu précédemment que l’affectation était une instruction qu’on pouvait identifier grace à la présence du mot-clef =.

On peut désormais considérer les expressions de comparaisons et leurs valeurs.

Expression de comparaison

Une expression de comparaison est une expression qui est évaluée à un des booléens True/False.

Les exemples ci dessous sont à connaître et à savoir utiliser. On considère ici que a est une variable qui identifie la valeur 1 et b la valeur 2.

  • égalité de deux valeurs

a == 1
True
  • négation de l’égalité

b != 1
True
  • strictement supérieur

b > a
True
  • supérieur ou égal

b >= a
True
  • strictement inférieur <

  • inférieur ou égal <=

Il existe quelques valeurs spéciales en Python. En particulier None qui correspond à la valeur nulle. L’expression de comparaison avec None peut alors s’écrire

a is None
False

2.1.4. Opérations en Python#

Python permet d’effectuer la plus part des opérations mathématiques courantes. Parmi celles-ci, on a

  • +, -, * et / pour les opérations usuelles sur les nombres ;

  • // et % pour le quotient et le reste de la division entière ;

  • ** pour l’élévation à la puissance d’un nombre.

L’opérateur + sert aussi à assembler ensemble des chaines de caractères (on dit concaténer).

'1' + '0'
'10'
'a' + 'b'
'ab'

Exercices sur les variables