Chaîne brute en Python

Lakshay Kapoor 30 janvier 2023
  1. Chaîne brute en Python
  2. Chaînes brutes non valides en Python
  3. Utilisation de chaînes brutes en Python
Chaîne brute en Python

Il existe de nombreuses façons de représenter des chaînes en Python. Une façon de représenter les chaînes est de les convertir en chaînes brutes.

Ce tutoriel va définir une chaîne brute en Python.

Chaîne brute en Python

La chaîne brute en Python est n’importe quelle chaîne habituelle préfixée par un r ou R. Toute barre oblique inverse (\) présente dans la chaîne est traitée comme un caractère réel ou littéral. Par exemple, si une chaîne comporte \n ou \t entre les deux, elle sera considérée comme un caractère et non comme un caractère nouvelle ligne ou tabulation.

Prenons un exemple d’utilisation du caractère de nouvelle ligne \n entre une chaîne sans préfixer la chaîne avec r ou r.

print("Hi\nHow are you?")

Production:

Hi
How are you?

Préfixons maintenant la chaîne entière avec le caractère de chaîne brut r.

print(r"Hi\nHow are you?")

Production:

Hi\nHow are you?

Comme vous pouvez le voir, le caractère de nouvelle ligne \n est traité comme une chaîne littérale et non comme un caractère spécial.

Chaînes brutes non valides en Python

Une seule barre oblique inverse \ n’est pas considérée comme une chaîne brute valide en Python.

print(r"\")

Production:

File "<ipython-input-6-6cdee2fbdda0>", line 1
    print(r"\")
               ^
SyntaxError: EOL while scanning string literal

Utilisation de chaînes brutes en Python

En Python, les chaînes brutes sont utilisées pour renvoyer une chaîne lorsqu’elle n’est pas du tout traitée. Cela signifie que si une chaîne est préfixée par un r ou une raw string et que cette chaîne se compose de tout caractère d’échappement invalide comme \x, alors une erreur ne se produira pas.

Voici un exemple de code.

print("Hi\xHow are you?")

Production:

 File "<ipython-input-15-1056651b28e1>", line 1
    print("Hi \x How are you?")
          ^
SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 3-4: truncated \xXX escape

Notez que la chaîne n’est pas préfixée par r et qu’il y a un caractère d’échappement non valide entre la chaîne. Par conséquent, une erreur s’est produite.

Lakshay Kapoor avatar Lakshay Kapoor avatar

Lakshay Kapoor is a final year B.Tech Computer Science student at Amity University Noida. He is familiar with programming languages and their real-world applications (Python/R/C++). Deeply interested in the area of Data Sciences and Machine Learning.

LinkedIn

Article connexe - Python String