我试图用转义符(我猜是某种类型)解析json字符串
{
"publisher": "\"O'Reilly Media, Inc.\""
}
如果我从字符串中删除字符\"
,解析器的分析效果很好
不同解析器引发的异常是
json
^{pr2}$
ujson
ValueError: Unexpected character in found when decoding object value
如何使解析器转义这些字符?在
更新:
在本例中,ps.json作为ujson导入
这是我的ide显示的
逗号只是意外添加的,json末尾没有尾随逗号,json有效
字符串定义。在
Tags:
您的JSON无效。如果您对JSON对象有疑问,可以使用JSONlint验证它们。在你的情况下,你有一个目标
你有一个额外的逗号,表示有别的东西要来了。所以JSONlint产生了
这将帮助你找到错误所在。在
删除的逗号
^{pr2}$收益率
更新:我将保留关于JSONlint的内容,因为它可能在将来对其他人有所帮助。至于格式良好的JSON对象,我已经
屈服
几乎可以肯定的是,您没有正确定义转义反斜杠。如果正确定义字符串,JSON解析就可以了:
注意,我使用了一个原始字符串文本来定义Python中的字符串;如果我没有,Python将解释
^{pr2}$\"
,并插入一个常规的"
。您必须将反斜杠加倍,否则:将解析后的Python结构重新编码回JSON会显示反斜杠重新出现,字符串的
repr()
输出使用相同的双反斜杠:如果您没有转义
\
转义,您将以未转义引号结束:注意,
\"
序列现在被打印成"
,反斜杠消失了!在相关问题 更多 >
编程相关推荐