我将以下文本输出作为str():
"We\'ve ... here\'s why ... That\'s how ... it\'s"
如你所见,总有一个" \"在撇号之前。
然后,我尝试了以下:
text = text.replace("\", "")
SyntaxError: EOL while scanning string literal
text.replace("\\", "")
或text.strip("\")
也是如此。
我可以做些什么来摆脱我文本中的所有\
?
谢谢!
解决方案:
\'是Python输出字符串的方式。一旦你打印()或导出字符串,没有问题。
答案 0 :(得分:1)
在Python 2.7.13中,这段代码:
text = "We\'ve ... here\'s why ... That\'s how ... it\'s"
text = text.replace("\\", "")
print text
输出We've ... here's why ... That's how ... it's
您使用的是不同版本的Python,还是要查看特定的代码部分?
修改强>
我还想提一下,撇号在他们面前有反斜杠,因为它是escape character。这基本上只是意味着你告诉终端python输出到字面上解释撇号(在这种情况下),并且不会以任何其他字符的方式处理它。
还值得注意的是,反斜杠有其他好的用途(\n
,或换行是最有用的imho之一。)
例如:
text = "We\'ve ... here\'s why ...\nThat\'s how ... it\'s"
print text
输出:
We've ... here's why ...
That's how ... it's
并不是说\n
被解释为终端在解释其余字符串之前转到换行符的请求。