Maison >développement back-end >Tutoriel Python >Comment éviter les erreurs de séquence d'échappement lors de l'utilisation de barres obliques inverses dans les littéraux de chaîne Python ?
Éviter les séquences d'échappement dans les littéraux de chaîne
En Python, les littéraux de chaîne peuvent contenir des séquences d'échappement, telles que 'n' pour une nouvelle ligne ou ' t' pour un onglet. Cependant, que se passe-t-il si vous souhaitez inclure une véritable barre oblique inverse dans votre chaîne ?
Considérez le code suivant :
import os path = os.getcwd() final = path +'\xulrunner.exe ' + path + '\application.ini' print(final)
Ce code produit une erreur car les barres obliques inverses sont interprétées comme des séquences d'échappement pour caractères Unicode. Pour éviter cela, vous pouvez préfixer la chaîne avec « r », indiquant qu'il s'agit d'une chaîne brute. Dans une chaîne brute, les barres obliques inverses sont traitées comme des caractères littéraux.
final= path + r'\xulrunner.exe ' + path + r'\application.ini'
Cela affichera :
C:\Users\me\xulrunner.exe C:\Users\me\application.ini
Vous pouvez également utiliser la fonction os.path.join pour combiner des éléments de chemin avec le bon séparateur (antislash sous Windows) :
final = (os.path.join(path, 'xulrunner.exe') + ' ' + os.path.join(path, 'application.ini'))
Cela garantit que les chemins sont correctement combinés, quel que soit le mode d'exploitation système.
N'oubliez pas qu'il est généralement préférable d'utiliser des barres obliques (/) dans les chemins de fichiers, car Python les convertira en séparateur approprié en fonction de la plate-forme. Cependant, l'utilisation de os.path.join est la méthode préférée pour combiner des éléments de chemin, car elle garantit la séparation correcte pour l'environnement actuel.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!