Chaîne brute et chaîne Unicode en Python

Neema Muganga 30 janvier 2023
  1. Chaîne brute en Python
  2. Chaîne Python Unicode
Chaîne brute et chaîne Unicode en Python

Chaîne brute en Python

Les littéraux de chaîne bruts en Python définissent des chaînes normales qui sont préfixées par un r ou R avant le guillemet d’ouverture. Si une barre oblique inverse (\) est dans la chaîne, la chaîne brute traite ce caractère comme un caractère littéral mais pas comme un caractère d’échappement.

Par exemple,

print(r"\n")
print(r"\t")

Production :

\n
\t

Il est nécessaire de doubler chaque barre oblique inverse lors de la définition d’une chaîne afin qu’elle ne soit pas confondue avec le début d’une séquence d’échappement comme une nouvelle ligne ou la nouvelle tabulation. Nous voyons une telle application de syntaxe dans la syntaxe des expressions régulières et lors de l’expression des chemins de fichiers Windows.

REMARQUE : r'\' générera une erreur de syntaxe car r'\' traite la barre oblique inverse comme un littéral. Sans le préfixe r'\', la barre oblique inverse est traitée comme un caractère d’échappement.

Exemple:

text = "Hello\nWorld"
print(text)

Production :

Hello
World

Sans l’indicateur de chaîne brute r, la barre oblique inverse est traitée comme un caractère d’échappement, donc lorsque la chaîne ci-dessus est imprimée, la nouvelle séquence d’échappement de ligne est générée. Par conséquent, les deux chaînes du texte sont imprimées sur des lignes distinctes, comme indiqué dans la sortie.

En utilisant le même exemple de texte, ajoutez le préfixe r avant la chaîne.

Exemple:

text = r"Hello\nWorld"
print(text)

Production :

Hello\nWorld

À partir de la sortie, l’indicateur de chaîne brute traite la barre oblique inverse comme un littéral et imprime le texte avec la barre oblique inverse incluse. Ainsi, l’entrée et la sortie sont identiques car la barre oblique inverse n’est pas échappée.

Par exemple, '\\n' et r'\n' ont la même valeur.

print("\\n")
print(r"\n")

Chaîne Python Unicode

Unicode est un moyen de stocker des chaînes python. Unicode peut stocker des chaînes de tous les types de langues. La deuxième façon est le stockage de chaîne de type ASCII représenté par str en Python. str est le type de données par défaut pour stocker les chaînes en Python.

Pour convertir une chaîne en type Unicode, mettez un u avant le texte comme ceci - u'string' ou appelez la fonction unicode() comme ceci - unicode('string').

u'text' est une chaîne Unicode tandis que text est une chaîne d’octets. Un objet Unicode prend plus d’espace mémoire.

Par exemple,

test = u"一二三"
print(test)

Production :

一二三

Article connexe - Python String