我运行一个外部函数,它将磁盘上文件的 Windows 路径作为字符串返回(字符串的一部分:
Error details are at "C:\Users\ADMINI~1\AppData\Local\Temp\2\BuildErrors.txt" Succeeded
因此,我将返回的结果加载到一个字符串变量中:
s = '''Error details are at "C:\Users\ADMINI~1\AppData\Local\Temp\2\BuildErrors.txt" Succeeded'''
file_path = s.split('"')[1]
print file_path
> C:\Users\ADMINI~1\AppData\Local\Temp\BuildErrors.txt
#(后面有STX图标Temp
如果我file_path
在 Python Shell 中访问,它的打印如下:
file_path
'C:\\Users\\ADMINI~1\\AppData\\Local\\Temp\x02\\BuildErrors.txt'
我知道这\2
是在 Python 中作为特殊字符处理的,但这使我无法读取文件,因为路径无效。
当我从外部函数获取字符串时,我已经有一个字符串对象,据我所知,您无法从中创建原始字符串 ( r''
)。
我已经尝试s.encode('string-escape')
过源字符串,但它保持\x02
原位。
如何通过处理\2
in 来生成有效路径?