所以我试图解决一个问题,在我的代码中,一旦使用了re.split(regex_pattern,str),将额外的反斜杠添加到我的分割列表中的子字符串中。问题是这样的:当使用re.split时,为什么在列表中的子串中添加了一个额外的反斜杠''?
In [63]: str = r'/dir/hello\/hell/dir2/hello\end'
In [64]: regex_pattern = '(hello)'
In [65]: a = re.split(regex_pattern, str)
In [66]: a
Out[66]: ['/dir/', 'hello', '\\/hell/dir2/', 'hello', '\\end']
正如你所看到的,出[66]可见名单为具有两个子与“\\”,而不是两个用“\”。我知道这个问题与编译器如何解释反斜杠有关,但最终无法弄清楚为什么会发生这种情况。
我也试图使我str变量原始字符串,并增加额外的“\”我str变量(最多四个“\\\\”),其中一个存在,即
In [63]: str = r'/dir/hello\\/hell/dir2/hello\\end'
这仍然给出相同的输出。
我在Ubuntu上使用Python 2.7。对不起,如果这是重复的,但我找不到答案适用于我的问题。
基本上不用担心。它只是在您将列表打印到屏幕上时改变列表的显示方式,但实际的字符串没有任何额外的斜线。 –
@ juanpa.arrivillaga谢谢 –