我一直在尝试找出一种在 Python 中加载 JSON 对象的好方法。我发送这个 json 数据:
{'http://example.org/about': {'http://purl.org/dc/terms/title': [{'type': 'literal', 'value': "Anna's Homepage"}]}}
到后端,它将作为字符串接收,然后我用来json.loads(data)解析它。
json.loads(data)
但每次我得到同样的例外:
ValueError: Expecting property name enclosed in double quotes: line 1 column 2 (char 1)
我用谷歌搜索了它,但除了这个解决方案之外json.loads(json.dumps(data))似乎没有任何效果,这对我个人来说似乎效率不高,因为它接受任何类型的数据,即使是那些不是 json 格式的数据。
json.loads(json.dumps(data))
任何建议将不胜感激。
这个:
{ 'http://example.org/about': { 'http://purl.org/dc/terms/title': [ {'type': 'literal', 'value': "Anna's Homepage"} ] } }
不是 JSON。 这个:
{ "http://example.org/about": { "http://purl.org/dc/terms/title": [ {"type": "literal", "value": "Anna's Homepage"} ] } }
是 JSON。
编辑: 一些评论者认为以上还不够。 JSON 规范 - RFC7159规定字符串以引号开头和结尾。那就是 " 。 单引号 ' 在 JSON 中没有语义含义,只允许在字符串中使用。
"
'