Python将反斜杠替换为斜杠

问题描述 投票:10回答:3

如何在字符串'pictures\12761_1.jpg'中转义反斜杠?

我知道原始字符串。例如,如果我从xml文件中提取'pictures\12761_1.jpg'值,如何将str转换为raw?

python string filepath backslash
3个回答
18
投票

您可以使用字符串.replace()方法。

>>> print r'pictures\12761_1.jpg'.replace("\\", "/")
pictures/12761_1.jpg

0
投票

您也可以使用分割/合并:

print "/".join(r'pictures\12761_1.jpg'.split("\\"))

编辑:

您可能使用的另一种方法是在数据检索期间准备数据(例如,想法是在分配给变量之前先更新字符串),例如:

f = open('c:\\tst.txt', "r")
print f.readline().replace('\\','/')

>>>'pictures/12761_1.jpg\n'

0
投票

我知道这不是您的确切要求,但我认为这样做会更好。最好只包含目录名称,然后使用os.path.join(directory,filename)

“ os.path.join(path,* paths)智能地连接一个或多个路径组件。返回值是路径和* paths的连接,每个非空部分后面都紧跟一个目录分隔符(os.sep),最后一个除外,这意味着如果最后一个部分为空,则结果只会以分隔符结尾。如果组件是绝对路径,则所有先前的组件都将被丢弃,并且连接将从绝对路径组件继续进行“”>

https://docs.python.org/2/library/os.path.html

© www.soinside.com 2019 - 2024. All rights reserved.