использование обратной косой черты в Python (для не выхода)

import os
path= os.getcwd()
final= path +'\xulrunner.exe ' + path + '\application.ini'
print final

Я хочу помещенный:

c:\python25\xulrunner.exe c:\python25\application.ini

Я не хочу, чтобы обратная косая черта работала строкой, я имею в виду, не хотят это выйти или сделать что-либо специальное. Но я получаю ошибку

Недопустимый Escape \x

Как я могу использовать '\' в качестве '\' и не Escape?

23
задан bignose 20 June 2011 в 04:05
поделиться

2 ответа

Чтобы прямо ответить на ваш вопрос, поставьте r перед строкой.

final= path + r'\xulrunner.exe ' + path + r'\application.ini'

Но лучшим решением будет os.path.join:

final = os.path.join(path, 'xulrunner.exe') + ' ' + \
         os.path.join(path, 'application.ini')

(обратная косая черта здесь экранирует новую строку, но вы можете поместить все в одну строку, если хотите)

Я упомяну, что вы можете использовать прямые косые черты в путях к файлам, и Python автоматически преобразует их в правильный разделитель (обратная косая черта в Windows), если это необходимо. Так что

final = path + '/xulrunner.exe ' + path + '/application.ini'

должно работать. Но все же предпочтительнее использовать os.path.join, потому что так становится ясно, что вы пытаетесь сделать.

33
ответ дан 29 November 2019 в 01:20
поделиться

Вы можете избежать косой черты. Используйте \\ , и вы получите всего одну косую черту.

23
ответ дан 29 November 2019 в 01:20
поделиться
Другие вопросы по тегам:

Похожие вопросы: