我正在尝试执行以下代码:
str_2_load='{"source":"\u003ca href=\"http:\/\/twitter.com\" \u003eTwitter \u003c\/a\u003e"}'
json.loads(str_2_load)
获取以下错误:
File "C:\Python27\lib\json\decoder.py", line 381, in raw_decode obj, end = self.scan_once(s, idx) ValueError: Expecting , delimiter: line 1 column 26 (char 25)
但是如果我使用原始字符串文本,它就可以正常工作。 i、 e
^{pr2}$由于str_2_load
是动态分配的,因此我正在寻找解决上述问题的方法。在
将所有“\”替换为“\”:
我在python3中也遇到了同样的问题。 以下是我的方法:
方法1:按照其他人的建议,在字符串前面添加
r'...'
,将字符串转换为原始字符串。如下所示。在方法2:应该将字符串作为
bytes
对象读入,因为字符串包含十六进制和控制字符。json.loads()
也可以处理bytes
对象,因为Python3.6。在我相信如果你让str_2_加载一个原始字符串,在字符串的开头加上一个'r'。不知怎么的,这和正则表达式有关。在
相关问题 更多 >
编程相关推荐