我有字符串变量,它是
temp = '1\2\3\4'
我想在字符串变量中添加一个前缀 ‘r’ 并得到
r'1\2\3\4'
这样我就可以根据’\‘拆分字符串。我尝试了以下内容:
r'temp'
'r' + temp
r + temp
但以上均无效。有简单的方法吗?我正在使用 python 3。我还尝试使用
temp.encode('string-escape')
但它返回以下错误
LookupError: unknown encoding: string-escape
原文由 Tracy Yang 发布,翻译遵循 CC BY-SA 4.0 许可协议
r
是字符串 文字 的前缀。这意味着,r"1\2\3\4"
不会解释\
作为创建字符串值时的转义符,而是保留\
字符串为实际字符。因此,r"1\2\3\4"
将有七个字符。您已经有了字符串值:没有什么可解释的。您不能让
r
前缀影响变量,只能影响文字。您的
temp = "1\2\3\4"
会将反斜杠解释为转义,创建字符串'1\x02\x03\x04'
(一个四字符的字符串),然后将此字符串分配给变量temp
无法追溯地重新解释原始文字。编辑:鉴于最近的评论,您似乎实际上没有字符串
"1\2\3\4"
。如果你有一个有效的路径,你可以使用或者
但你可能也不需要那个;相反,您可能希望将路径拆分为目录和文件名,最好使用
os.path
函数 来完成。