Python将\替换为\

Jir*_*dek 3 python regex string replace path

我写了一些简单的Python脚本,我想/\text变量替换所有字符。我对字符有问题\,因为它是转义字符。当我使用replace()方法时:

unix_path='/path/to/some/directory'
unix_path.replace('/','\\')
Run Code Online (Sandbox Code Playgroud)

然后返回以下字符串:\\path\\to\\some\\directory。当然,我不能使用:unix_path.replace('/','\'),因为\是转义字符。

当我使用正则表达式时:

import re
unix_path='/path/to/some/directory'
re.sub('/', r'\\', unix_path)
Run Code Online (Sandbox Code Playgroud)

则结果相同:\\path\\to\\some\\directory。我想获得这样的结果:\path\to\some\directory

注意:我知道了os.path,但是在此模块中没有找到任何可行的方法。

Joë*_*oël 6

你错过了一些东西:它显示\\Python解释,但你的结果是正确的:'\\'是Python的只是如何呈现角色\在一个正常的字符串。严格等于\原始字符串,例如'some\\path与相同r'some\path'

并且:Windows上的Python非常了解如何/在路径中使用。

但是,如果您希望显示依赖于操作系统,则可以使用以下技巧:

In [0]: os.path.abspath('c:/some/path')
Out[0]: 'c:\\some\\path'
Run Code Online (Sandbox Code Playgroud)