Comment créer des chaînes comportant des caractères spéciaux
Certaines chaînes contiennent des caractères spéciaux. Ils diffèrent des caractères alphanumériques et des signes de ponctuation que vous avez l’habitude d’utiliser. En fait, ils peuvent être répartis en plusieurs catégories :
- Contrôle : Une application a besoin de pouvoir déterminer si un caractère particulier n’est pas destiné à être affiché, mais plutôt à contrôler l’affichage. Tous les déplacements, par exemple, sont basés sur la position du point d’insertion, le trait clignotant que vous voyez sur l’écran quand vous tapez du texte. Par exemple, une tabulation 制表 ne se signale par rien de visible. Pourtant, elle fait bien partie du texte. De même, vous appuyez sur la touche Entrée lorsque vous voulez passer à la ligne suivante. Là encore, ceci se traduit par l’ajout d’un code numérique à votre texte.
- Dessin : Certains caractères ASCII permettent de réaliser des formes graphiques simples. Voyez par exemple le site https://www.asciiworld.com/.
- Typographie : Nombre de caractères typographiques peuvent être affichés par un traitement de texte ou un éditeur évolué, comme le marqueur de fin de paragraphe, ou pied-de-mouche (¶).
- Autre : Selon le jeu de caractères 字符集 que vous utilisez, les possibilités sont pratiquement sans fin. Vous pouvez trouver un caractère pour pratiquement tout ce dont vous pouvez avoir besoin. Tout le problème est d’indiquer à Python comment présenter ces caractères spéciaux.
Lorsque l’on travaille avec des chaînes, même simples, il est courant d’avoir à faire à des caractères de contrôle. Python fournit pour cela des séquences dites d’échappement 转义序列 qui vous permettent de définir directement de tels caractères spéciaux.
Une séquence d’échappement transforme une lettre, comme un a, en lui donnant une nouvelle signification (comme un bip sonore). La combinaison de la barre oblique inverse (\) et d’une lettre (disons un a) sert à définir une telle séquence, ou code, d’échappement, dont le Tableau donne un aperçu.
Tableau : Python et les séquences d’échappement.
Séquence d’échappement | Signification |
---|---|
\\ | Barre oblique inverse (\) |
\’ | Apostrophe (’) |
\” | Guillemets (“) |
\a | Bip ASCII (BEL) |
\b | Retour arrière ASCII (BS) |
\f | Saut de page ASCII (FF) |
\n | Saut de ligne Linefeed (LF) |
\r | Retour chariot ASCII (CR) |
\t | Tabulation horizontale ASCII (TAB) |
\uhhhh | Caractère Unicode (un système de code étendu des caractères), hhhh désignant une valeur hexadécimale. |
\v | Tabulation verticale ASCII (VT) |
\ooo | Caractère ASCII, ooo désignant une valeur octale 八进制. |
\xhh | Caractère ASCII, hh désignant une valeur hexadécimale 十六进制. |
La meilleure manière de voir comment tout cela fonctionne, c’est bien sûr d’essayer. C’est ce que proposent les étapes qui suivent. Vous pouvez également les retrouver dans le fichier téléchargeable SpecialCharacters.py.
- Ouvrez une fenêtre de fichier Python.
Vous pouvez par exemple lancer Python en mode Shell, puis choisir dans le menu File la commande New File. - Tapez le code suivant en appuyant sur Entrée à la fin de chaque ligne :
print("Une partie de ce texte\r\nse trouve sur la ligne suivante.") print("Ceci est un A avec un accent grave : \xC0.") print("Ceci est un caractère dessiné : \u2562.") print("Et voici un retour chariot: \266.") print("Ceci est le signe de la division : \xF7.")
- Choisissez la commande Run Module dans le menu Run.
Une fenêtre Python en mode Shell va s’ouvrir. L’application affiche le texte ainsi que les caractères spéciaux voulus (voir la Figure).
Figure : Utiliser des caractères spéciaux permet d’afficher des informations particulières, ou encore de formater la sortie.
Python utilise un jeu de caractères standardisé, ce qui signifie que le résultat devrait être identique quelle que soit la plate-forme utilisée. Ce n’est cependant pas une certitude, et vous devriez donc tester votre application sur différents systèmes si l’emploi de caractères spéciaux y joue un rôle important. De plus, des configurations personnalisées d’ordinateur peuvent avoir une influence sur ce qui est affiché.
Précédent:Utiliser des caractères pour créer des chaînes
Suivant:Comment sélectionner des caractères individuels de Python