首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在python中使用反斜杠(不是转义)

在python中使用反斜杠(不是转义)
EN

Stack Overflow用户
提问于 2010-08-01 10:19:51
回答 4查看 76.2K关注 0票数 31
代码语言:javascript
复制
import os
path= os.getcwd()
final= path +'\xulrunner.exe ' + path + '\application.ini'
print final

我想要输出:

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

我不希望反斜杠像字符串一样工作,我的意思是不希望它转义或做任何特殊的事情。但是我得到了一个错误

无效\x转义

如何使用'\‘作为'\’而不是转义?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2010-08-01 10:22:03

要直接回答您的问题,请将r放在字符串前面。

代码语言:javascript
复制
final= path + r'\xulrunner.exe ' + path + r'\application.ini'

但更好的解决方案是os.path.join

代码语言:javascript
复制
final = os.path.join(path, 'xulrunner.exe') + ' ' + \
         os.path.join(path, 'application.ini')

(这里的反斜杠是转义换行符,但如果需要,您可以将整个内容放在一行中)

我将提到,您可以在文件路径中使用正斜杠,Python会根据需要自动将它们转换为正确的分隔符(在Windows上为反斜杠)。所以

代码语言:javascript
复制
final = path + '/xulrunner.exe ' + path + '/application.ini'

应该行得通。但是,使用os.path.join仍然更可取,因为它清楚地表明了您想要做什么。

票数 40
EN

Stack Overflow用户

发布于 2010-08-01 13:22:32

您可以转义斜杠。使用\\,你只会得到一个斜杠。

票数 26
EN

Stack Overflow用户

发布于 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: ‘ ‘ ‘ ’’’

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3380484

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档