Aller au contenu

Les types en Python

Alors je ne sais pas si vous avez remarqué, mais toutes nos variables jusqu'à présent étaient des nombres, des nombres entiers pour être précis.

Mais en fait, Python nous permet de stocker bien plus de genre de trucs dans une variable que juste des entiers. Et le genre de truc stocké dans une variable, on va l'appeler le type de la variable.

Il y a 4 types de base en Python, qui sont :

Type Description Exemple Code
int Nombre entier 12 age = 12
float Nombre à virgule 3.14 pi = 3.14
str Chaîne de caractères (texte) "Alice" nom = "Alice"
bool Booléen (vrai ou faux) True / False est_etudiant = True

On va donc dans la suite les voir un peu plus en détail.

Nombres entiers et à virgule

On a déjà vu les nombres entiers dans la page précédente, donc pas grand chose de plus à dire. Sachez juste que pour définir un nombre négatif, il suffit de rajouter un - devant le nombre, par exemple etage = -2.

Les nombres flottants sont des nombres à virgule. La seule chose notable c'est que comme Python est en anglais, on doit ici ne pas utiliser de virgule pour séparer la partie entière de la partie décimale, mais un point. Ce qui nous donne par exemple e = 2.71.

On peut réaliser sur les nombres les opérations suivantes :

Opérateur Nom Exemple Résultat
+ Addition 5 + 3 8
- Soustraction 5 - 3 2
* Multiplication 5 * 3 15
/ Division (résultat flottant) 5 / 2 2.5
// Division entière (tronquée) 5 // 2 2
% Modulo (reste de la division) 5 % 2 1
** Puissance 5 ** 2 25

Notez que les priorités habituelles entre opérations s'appliquent ici.

Quizz

Qu'affiche print(2+3**2)  ?
- 25
- 28
- *11
> La puissance étant prioritaire sur l'addition, le résultat est donc 11.

Chaîne de caractères

Pour ne pas confondre les chaîne de caractère avec les simples noms de variables, on doit encadrer leur contenu par des guillemets (simples ou doubles). Ce qui donne par exemple prenom = "Bob" ou prenom = 'Bob'. Les 2 sont corrects mais veillez à ne pas les mélanger entre eux.

Notez que le backslash (\) est ici un caractère un peu spécial, car il sert à écrire des caractères spéciaux. Les plus importants étant \n pour le retour à la ligne et \t pour la tabulation.

Ainsi le code suivant

print("J'aime bien les chatons\nJ'aime pas les araignées")

affiche

J'aime bien les chatons
J'aime pas les araignées

Notez que la chaîne de caractère vide "" existe, et qu'elle est plus utile que vous ne le penseriez. Notez également qu'on peut mettre bout à bout (ou concaténer) des chaînes de caractères avec l'opération +.

Les booléens

L'ensemble des booléens qui existent dans le monde n'est composé que de 2 valeurs : True et False. On définit donc les booléens en les associant à une de ces 2 valeurs. est_un_homme = True ou est_un_homme = False.

Vous avez peut-être l'impression pour l'instant que ça sert à rien, mais on reviendra dessus plus tard, et vous allez voir que ça vous sera très utile.

Exercice pratique numéro 1

Stockez votre âge dans une variable, puis affichez l'âge que vous aurez dans 5 ans.

Les f-string

Vous en avez pas marre d'avoir des affichages tout dégueus ? De jamais afficher que des nombres tout seuls ou des phrases déjà toutes faites ?

Est-ce que par exemple vous auriez pas préféré, dans la question précédente, afficher Dans 5 ans, vous aurez 26 ans. ?

Et bien la f-string va régler tout ça pour nous !

Pour cela, on va précéder notre chaîne de caractère d'un f, et on va mettre les variables à afficher entre accolades {}. Par exemple

age = 21
print(f"J'ai {age} ans.")

affiche

J'ai 21 ans.

Exercice pratique numéro 2

Stockez votre âge dans une variable et votre taille en mètres dans une autre, puis affichez votre taille ainsi que l'âge que vous aurez dans 5 ans, à l'aide d'une belle petite phrase (oui c'est random et alors ?).

En résumé

Vous savez maintenant

  • Définir des variables des 4 types de base de Python
  • Faire des opérations sur des nombres entiers ou à virgule
  • Afficher des variables au milieu de phrases toutes mignonnes

Mais est-ce que ce serait pas trop une singerie d'avoir des programmes qui au lieu s'exécuter de manière déterministe, interagissent avec l'utilisateur et se comportent différemment en fonction de ce qu'il nous dit ???

Pour savoir comment faire ça, CLIQUEZ sur suivant et continuez votre progression déjà IMPRESSIONANTE.