Les textes⚓︎
Écritures d'un texte⚓︎
Un langage de programmation doit savoir manipuler des nombres mais aussi du texte. Par exemple, quand vous tapez une phrase dans un moteur de recherche, ce dernier va commencer par découper votre phrase en plusieurs mots.
Dans la plupart des langages de programmation, un texte est représenté par une suite de caractères entourée de guillemets simples (ou apostrophes) ' ' ou doubles " ".
Tapez donc dans la console 'Bonjour'
Remarque
Vous l'aurez sans doute deviné mais l'ordinateur ne répond pas à votre courtoisie : il ne fait que recopier le texte que vous avez tapé...
D'ailleurs, si vous tapez le texte : 'Quelle heure est-il ?'
, l'ordinateur ne vous donnera pas l'heure !
Tapez maintenant le texte 'Comment t'appelles-tu ?'
et observez le résultat.
Explication
Ici, l'erreur vient du fait que le texte se termine après le deuxième t.
Remarquez le symbole ^ qui précise la position de l'erreur.
La suite de l'instruction appelles-tu ?'
n'est pas sensée se trouver juste après un texte (de même l'instruction 'Bonjour' !
provoquera aussi une erreur de syntaxe).
Si je veux qu'un texte contienne une apostrophe je peux :
- soit utiliser des guillemets :
"Comment t'appelles-tu ?"
- soit échapper le ' en le remplaçant par \' :
'Comment t\'appelles-tu ?'
Tapez maintenant le texte 'Bonjour
et observez.
Explication
Encore un nouveau type d'erreur : SyntaxError: EOL while scanning string literal.
Ce qui, dans notre langue signifie à peu près cela : j'ai atteint la fin de ligne (End Of Line) alors je lisais un texte (string).
En effet, le texte n'a pas été terminé...
Enfin, si je dois manipuler de très longs textes, je peux utiliser trois apostrophes ('''), tapez la suite d'instructions en passant à la ligne à chaque fois :
>>> '''
>>> Salut,
>>> tu
>>> vas
>>> bien ?
>>> '''
Remarques
Vous aurez remarqué :
- les points de suspension qui montraient que nous n'avions pas fini d'entrer notre texte ;
- les "\n" qui ont été ajoutés dans notre texte ; ils représentent des retours à la ligne (n = new line).
À retenir
- L'interpréteur ne cherche pas à comprendre le contenu d'un texte mais le mémorise tel quel.
- Un texte est délimité par ' ' ou par " "
- Un texte est, en informatique, nommé chaîne de caractères.
Addition de texte (concaténation)⚓︎
Tapez les instructions suivantes et observez les résultats :
'deux' + 'deux'
'2' + '3'
'deux' + 3
Explications
- Eh oui, deux plus deux ne font pas toujours quatre !
L'opération
+
n'a pas ici le sens habituel : quand nous ajoutons deux chaînes de caractères, nous obtenons une nouvelle chaîne obtenue en mettant à la suite ces deux chaînes. Cette opération est appelée concaténation. - Même principe : nous n'ajoutons pas les nombres 2 et 3 mais les chaînes de caractères '2' et '3'.
- Voilà encore un nouveau type d'erreur : TypeError.
En Python, il n'est pas possible d'ajouter un nombre et du texte car ce ne sont pas des données du même type.
Par contre, il est possible d'ajouter un nombre entier et un nombre à virgule, bien que ce ne soient pas des données du même type non plus :
1.41 + 5
.
Exercice
- Peut-on soustraire, multiplier ou diviser deux chaînes de caractères ?
- Peut-on soustraire, multiplier ou diviser une chaîne de caractère et un nombre ?