Les variables sont typées. Cela signifie qu'elles acceptent un certain type de contenu, pas un autre, par référence au contenu. Un peu comme une voiture qui ne fonctionne pas avec tous les types de carburant. Mais en python, il sera plus vrai de prendre les choses dans le sens inverse : c’est le contenu qui a un type et la variable n’a que le type de son contenu.
Les deux types principaux et les plus simples sont les types permettant l'interprétation des nombres entiers (pour faire des calculs si besoin) et du texte (pour évaluer par exemple ce qu'un utilisateur a saisi comme mot de passe ou autre).
Le typage, c'est-à-dire l'attribution d'un type, se fait principalement au moment de la déclaration :
a=2
signifie implicitement que la valeur de « a » est de type entier car « 2 » est bien un nombre entier.
nom="cedric"
signifie implicitement que la valeur de cedric est de type texte (nous dirons « chaîne », comme une suite de lettres).
Il existe de nombreux types, mais « entier » et « chaîne » sont les plus simples et fréquents. Nous pouvons y ajouter dès maintenant le type « float » qui est prévu pour les nombres décimaux. Nous obtenons donc l'association suivante :
a=2 integrer nombre entier
a="texte" string chaîne de caractères
a=2.0 float nombre décimal
Il faut faire très attention aux types choisis car il est impossible de combiner des données de types différents dans un calcul :
a=2 nom="cedric" b=nom+a TypeError:cannot concatenate 'str' and 'int' objects
Python nous informe qu'on ne peut ajouter des chiffres et des lettres. Jusque là tout est normal, même si dans certains cas, comme nous le verrons, cela devra être contourné. Vous devez vous dire « Mais qu'est ce qu'il est bête ! ». C'est un peu vrai mais vous conviendrez que les cas où il faut effectuer des calculs sur des mots sont assez rares !
Regardez l'exemple qui suit :
a=2 b=1.5 c=a+b c
affiche
3.5
Il est donc possible de faire des calculs entre des entiers et des flottants, bref des chiffres, tout est donc normal. Remarquez simplement la façon d'écrire les chiffres qui n'utilise pas une virgule mais un point (à l'anglaise).
Pour connaitre le type, on pourra utiliser la fonction builtin type():
type(a)
Il y a une erreur de communication avec le serveur Booktype. Nous ne savons pas actuellement où est le problème.
Vous devriez rafraîchir la page.