3 – Les types de variables

3.1 Les différents types de variables.

Les variables ne contiennent pas forcément des nombres. Elles peuvent aussi stocker des chaînes de caractères et bien d’autres types de données : listes de nombres, valeurs booléennes (vrai ou faux), et bien d’autres types encore.

Le type d’une variable correspond à la nature de la valeur stockée dans la variable : nombre entier, nombre réel, chaîne de caractères, booléen (Vrai ou Faux), …

TypeNotation PythonEn Français
Integerintnombre entier
Floatfloatnombre à virgule flottante
Stringstrchaine de caractère
Booleanboolbooléen

Contrairement à beaucoup d’autres langages, en Python, il n’est pas nécessaire de déclarer le type des variables lors de leur création : Python attribue automatiquement un type à une variable lors de sa création.
La fonction type() permet de connaître le type d’une variable. Testons ces quelques lignes :

>>> a = « Salut ! »

>>> b = 36

>>> c = 5.87

>>> d = ’42’

>>> type(a)

>>> type(b)

>>> type(c)

>>> type(d)

3.2 Les chaines de caractères.

Les chaînes de caractères se notent entre guillemets ou apostrophes.

Ces deux notations “ et ‘ permettent de les inclure l’une dans l’autre.

>>>tt1=”L’eau vive”

>>>tt2=’Jacques a dit “debout” ‘

mais si cela ne suffit pas il existe un caractère d’échappement \ qui permet  soit d’afficher le caractère spécial qui le suit soit d’exécuter une commande spéciale comme une tabulation ou un retour à la ligne.

>>>print(“25\t3”)

>>>print(“just\ndo\nit”)

>>>print(‘Aujourd\’hui’)

>>>print(“il a dit : \”oui\””)

>>>print(“le dossier \\home”)

\t

\n

\’

\”

\\

Les chaines de caractères peuvent se concaténer ou se répéter :

>>>print(tt2+tt1)

>>>print(tt1*2)

Il est possible d’écrire des chaînes de caractères sur plusieurs lignes :

>>>tt3=””” Sur deux

lignes”””

>>>print(tt3)


Exercice : Bonjour

Écrire et sauver un programme « 04_bonjour.py » qui demandera à l’utilisateur son nom et lui répondra : Bonjour Bob (si Bob est le nom entré par l’utilisateur)


3.3 Comment « assembler » des variables de types différents ?

Il est parfois nécessaire de transformer une chaine de caractère en nombre ou inversement.

On change alors le type de la variable, on dit qu’on transtype ou qu’on “caste” la variable.

Fonctions de transtypage :

  • la fonction str() : convertit une variable en chaîne de caractères.
  • la fonction int() : convertit une variable en nombre entier.
  • la fonction float() : convertit une variable en nombre réel (encore appelé nombre à virgule flottante).

Analyser ce qu’affiche l’interpréteur après chaque ligne.

>>>”3”*5

>>>int(“3”)*5

>>>str(3.14)+” radians”

>>>int(11.8)

>>>float(“1.602176”)

>>>int(“101”,2)

Le cas de transtypage le plus courant est celui de la conversion de la saisie clavier réalisée par l’utilisateur à la suite d’une instruction input() dans un programme. En effet, la fonction input() renvoie toujours une chaîne de caractères.

 


Exercice : Retraite

Nous admettrons ici que la retraite restera définitivement fixée à 65 ans.
Écrire et sauver un programme « 05_retraite.py » qui :

  • demandera à l’utilisateur son âge,
  • lui annoncera en retour, en faisant une phrase, le nombre d’années de travail qu’il lui reste avant la retraite.

Exercice : Rectangle

Écrire et sauver un programme « 06_rectangle.py » qui calcule l’aire et le périmètre d’un rectangle à partir des dimensions saisies par l’utilisateur.

Remarque : on pourra maintenant gagner du temps avec une syntaxe plus ramassée du genre :

variable = int(input(« message »))