2. Les types

Dans tous les langages de programmation, un expression ou une variable appartient toujours à un type, ce qui détermine comment sa valeur est enregistrée en mémoire (espace de stockage, structure). En python, les principaux types de base sont les suivants :

  • type int : les nombre entiers, par exemple 1, 493, -582

  • type float : les nombres décimaux par exemple 5.7, 2.005

  • type str : les chaînes de caractères, par exemple ’alpha’, “Bonjour”

  • type bool : les booléens ou valeurs de vérité, soit True ou False

Question

Quelles valeurs sont de type str ?




Question

Quelles valeurs sont de type int ?




2.1. Erreur de type

L’exécution d’un programme peut souvent donner lieu à une erreur de type, par exemple

1 + "4"

donne l’erreur suivante :

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: unsupported operand type(s) for +: 'int' and 'str'

En effet, l’opérateur + n’est pas défini entre un entier et une chaîne de caractères.

Question

Parmi les instructions suivantes, lesquelles donneront une erreur de type ?







2.2. Opérateurs **, // et %

L’opérateur ** permet d’élever un nombre à une certaine puissance. Par exemple, 5² peut s’écrire 5 ** 2 en python.

Calculez 2 puissance 10 et stockez-le dans la variable res, puis exécutez le code!

En python, vous avez utilisez jusqu’à présent l’opérateur / pour faire une division. La réponse de cette division est un nombre réel. Néanmoins, il est parfois utile d’obtenir le résultat entier (arrondi à l’inférieur) de la division. Cela se fait avec l’opérateur //.

Exemples :

Division réelle : 9 / 4 donne 2.25
Division entière : 9 // 4 donne 2, car on peut mettre 2 fois 4 dans 9.

Question

Combien font 26 // 7 ?





L’opérateur modulo, qui s’écrit en python, % sert à redonner le reste de la division entière. Par exemple, Si on divise de manière entière 13 par 3, cela donne 4 (4·3 = 12) et il reste 1 pour arriver à 13. Ainsi, 13 % 3 redonne 1.

Question

Combien font 20 % 6 ?





L’opérateur modulo peut servir par exemple à savoir si un nombre est pair ou impair. En effet, x modulo 2 fait 0 si x est pair, mais 1 si le nombre est impair.

Question

Sachant que x % 2 est égal à 0, que peut-on dire de x?