Typage des variables
Types prédéfinis
Python dispose d'un certain nombre de types prédéfinis.
Liste des types
int : Nombre entier optimisé
long : Nombre entier de taille arbitraire
float : Nombre flottant
complex : Nombre complexe
str : Chaîne de caractère
unicode : Chaîne de caractère unicode
tuple :Liste de longueur fixe
list : Liste de longueur variable
dict :dictionnaire
file : Fichier
bool : Booléen
NoneType : Absence de type
NotImplementedType : Absence d'implementation
function :fonction
module :module
Les booléens
Le type bool est le type des expressions booléennes permettant d'écrire les conditions des instructions if
et while
. Les données de ce type ne peuvent prendre que deux valeurs vrai ou faux. En Python, les constantes littérales sont notées True
et False
.
[Nom :] bool
[Ensemble des valeurs :] true, false
[Littéraux :] true et false
[Opérateurs logique :] or, and, not
Les expressions avec un opérateur logique sont évaluées à True ou False
X or Y : OU logique, si X évalué à True, alors l'expression est True et Y n'est pas évalué. Sinon, l'expression est évaluée à la valeur booléenne de Y.
X and Y : ET logique, si X est évalué à False, alors l'expression est False et Y n'est pas évalué. Sinon, l'expression est évaluée à la valeur booléenne de Y.
not X : évalué à la valeur booléenne opposée de X.
Voir chapitre sur les booléens.
Les nombres entiers
Le type int
est le type des expressions numériques entières.
[Nom :] int
[Ensemble des valeurs :] le type
int
est limité aux entiers appartenant à un intervalle emin,emax, et il y a donc un plus petit et un plus grand entier. Cet intervalle dépend de l'architecture du processeur de l'ordinateur utilisé. Sur des architectures 32 bits, on a emin,emax= -230, 230-1= -1073741824,1 073741823. Sur des architectures 64 bits, on a emin,emax= -262, 262-1= -4611686018427387904, 4611686018427387903
[Littéraux :] les entiers dans leur forme écrite usuelle.
[Opérateurs :] +, -, *, /, **, %
Les nombres flottants
Un nombre à virgule flottante est un nombre décimal qu'il est possible de représenter par sa mantisse et son exposant. Par exemple, le nombre 125,789 est représentable par le couple (mantisse = 1,25789, exposant = 2). La mantisse étant toujours comprise entre -10 et 10 exclus.
Fondamental : Opérateurs mathématiques
symbole | effet | exemple |
---|---|---|
+ | addition | 6+4 == 10 |
- | soustraction | 6-4 == 2 |
* | multiplication | 6*4 == 24 |
/ | division | 6/4 == 1.5 |
** | élévation à la puissance | 12**2 == 144 |
// | division entière | 6//4 == 1 |
% | reste de la division entière | 6%4 == 2 |
Fondamental : Opérateurs de comparaisons
Tout comme les opérateurs logiques, les opérateurs de comparaison renvoient une valeur booléenne True
ou «
. Les opérateurs de comparaisons s'appliquent sur tous les types de base.False
»
< : strictement inférieur
> : strictement supérieur
<= : inférieur ou égal
>= : supérieur ou égal
== : égal
!= : différent
<> : différent, on utilisera de préférence !=
X is Y : X et Y représentent le même objet.
X is not Y : X et Y ne représentent pas le même objet
Il est possible d'enchaîner les opérateurs : X < Y < Z, dans ce cas, c'est Y qui est pris en compte pour la comparaison avec Z et non pas l'évaluation de (X < Y) comme on pourrait s'y attendre dans d'autres langages.
Fondamental : Les types définis dans le module Cartes
Le module Cartes définit deux types couleur
et numero_tas
.
[Nom: ] couleur
[Ensemble des valeurs : ] Les données de ce type ne peuvent prendre que quatre valeurs notées : CARREAU
, TREFLE
, PIQUE
et COEUR.
[Nom : ] numero_tas
[Ensemble des valeurs : ] Les données de ce type ne peuvent prendre que quatre valeurs : 1, 2, 3, 4.
Conseil :
Si vous ne vous souvenez plus du type d'une variable, utilisez la fonction type() qui vous le rappelle.
>>> x = 2
>>> type(x)
<type 'int'>
>>> x = 2.0
>>> type(x)
<type 'float'>
>>> x = '2'