utiliser backslash en python (pas pour s'échapper))
import os
path= os.getcwd()
final= path +'xulrunner.exe ' + path + 'application.ini'
print final
je veux les mettre:
c:python25xulrunner.EXE c:python25application.ini
je ne veux pas de barre oblique inverse pour travailler en tant que chaîne, je veux dire ne voulez pas de s'échapper ou de faire quelque chose de spécial. Mais j'obtiens une erreur
non Valide x escape
Comment puis-je utiliser un '' comme un '' et pas une fuite?
2 réponses
Pour répondre directement à votre question, mettre r
devant la corde.
final= path + r'\xulrunner.exe ' + path + r'\application.ini'
mais une meilleure solution serait os.path.join
:
final = os.path.join(path, 'xulrunner.exe') + ' ' + \
os.path.join(path, 'application.ini')
(la barre oblique inverse, il s'échappe de ligne, mais vous pourriez mettre le tout sur une seule ligne si vous voulez)
je mentionnerai que vous pouvez utiliser des slashs forward dans les chemins de fichier, et Python les convertira automatiquement dans le séparateur correct (backslash sur Windows) si nécessaire. Donc
final = path + '/xulrunner.exe ' + path + '/application.ini'
devrait fonctionner. Mais il est toujours préférable d'utiliser os.path.join
parce que cela rend clair ce que vous essayez de faire.
Vous pouvez échapper à la barre. Utilisez \
et vous obtenez un seul slash.