Python : Types et opérateurs
En mode interactif, on entre chacune des instructions suivantes dans une console Python :
>>> 3+3
>>> 3.0+3
>>> "3"+3
>>> "3"+"3"
>>> 3*3
>>> 3.0*3
>>> "3"*3
>>> "3"*"3"
Pour chacune des lignes ci-dessus, indiquer le résultat renvoyé par l'interpréteur Python.
Corrigé
Le résultat de cette instruction est : 6.>>> 3+3
Python ajoute les deux entiers et renvoie un entier.
Le résultat de cette instruction est : 6.0.>>> 3.0+3
Python ajoute les deux nombres. Comme l'un de ces nombres est un décimal (float), le résultat renvoyé est également un décimal (d'où la présence du « .0 » ).
Cette instruction renvoie une erreur.>>> "3"+3
Python ne peut pas ajouter un entier et une chaine de caractères. Il faut noter que, contrairement à d'autres langages, Python n'effectue pas de conversion de types automatiquement. On dit que Python est fortement typé.
Le résultat de cette instruction est : '33'.>>> "3"+"3"
Python concatène les chaînes de caractères. À cause des guillemets, "3" est considéré comme une chaîne de caractères. L'interpréteur Python n'additionne donc pas les valeurs numériques mais effectue une concaténation.
Le résultat de cette instruction est : 9.>>> 3*3
Python effectue le produit des deux entiers et renvoie un entier.
Le résultat de cette instruction est : 9.0.>>> 3.0*3
Python multiplie les deux nombres. Comme l'un de ces nombres est un décimal (float), le résultat renvoyé est un décimal.
Le résultat de cette instruction est : '333'.>>> "3"*3
Python répète trois fois la chaîne de caractères "3". L'opérateur *, suivi ou précédé d'un nombre entier, permet de répéter une chaîne de caractères.
Cette instruction renvoie une erreur.>>> "3"*"3"
Python ne peut pas multiplier une chaîne de caractères par une autre chaîne de caractères.