Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 字符串文字中的转义斜杠_Python - Fatal编程技术网

Python 字符串文字中的转义斜杠

Python 字符串文字中的转义斜杠,python,Python,我试图在字典里避开“/”。此目录包含许多URL 这是正确的- >>> url = "https://docs.python.org/2/reference/expressions.html" >>> print url.replace('/','\\/') https:\/\/docs.python.org\/2\/reference\/expressions.html 但是当我把同样的模式放进我的dict时,我得到了不同的结果。我确信这与字符串文字有关,

我试图在字典里避开“/”。此目录包含许多URL

这是正确的-

>>> url = "https://docs.python.org/2/reference/expressions.html"
>>> print url.replace('/','\\/') 
https:\/\/docs.python.org\/2\/reference\/expressions.html
但是当我把同样的模式放进我的dict时,我得到了不同的结果。我确信这与字符串文字有关,但我不确定如何继续

try:
    data["URL"] = url.replace('/','\\/') 
返回:

"http:\\/\\/docs.python.org"

不,这与数据的显示方式有关。字符串包含您期望的内容。问题是,您没有打印字符串,而是打印
repr(字符串)
,它显示了字符串的文本字符串表示形式(即如何在代码中键入字符串文本),因此它包括反斜杠的转义。

使用repr()或eval()在字典中调用时抛出语法错误。我发现的解决方法是在返回url时使用最终字典,并在本地字典外部而不是内部使用replace函数

这是字符串表示法。试着打印它看起来你可能会对字符串的表示方式和它的值感到困惑。为什么要这样“转义”这些字符串?斜杠不需要转义。是什么让你认为你需要逃离他们?有可能对他们进行评估吗?比如:eval(url.replace('/','\\/')是否可能?对你应该做些什么?不