import os
path= os.getcwd()
final= path +'\xulrunner.exe ' + path + '\application.ini'
print final
我想要输出:
c:\python25\xulrunner.exe c:\python25\application.ini
我不希望反斜杠像字符串一样工作,我的意思是不希望它转义或做任何特殊的事情。但是我得到了一个错误
无效\x转义
如何使用'\‘作为'\’而不是转义?
发布于 2010-08-01 10:22:03
要直接回答您的问题,请将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
仍然更可取,因为它清楚地表明了您想要做什么。
发布于 2010-08-01 13:22:32
您可以转义斜杠。使用\\
,你只会得到一个斜杠。
发布于 2020-10-31 06:42:23
您可以使用另一个反斜线(\\
)来转义反斜线,但这看起来不会更好。要解决这个问题,可以在字符串前面放一个r
,表示一个原始字符串。原始字符串将忽略所有内容,如果您还想要彩色文本,这是一件不好的事情,如果您的字符串包含一些引号,则非常糟糕:
a_and_b = r”Alice’s friend is Bob. He always says, \“howdy\” ”
在这种情况下,python将抛出一个SyntaxError...
如果你还没有想好如何解决这个问题,这里是:
a_and_b = r”””Alice’s friend is Bob. He always says, \“howdy\” ”””
在这里,我们使用多行字符串。如果字符串一行有3个引号,那么这很容易。在它们之间加一个空格,问题就解决了:
three_quotes = ’’’ Here are 3 single quotes: ‘ ‘ ‘ ’’’
https://stackoverflow.com/questions/3380484
复制相似问题