为什么这不起作用?我正在阅读simplejson JsonDecoder,true应该是可解析的并且转换为True。
% python
>>> import simplejson as json
>>> print json.loads({"bool":true})
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'true' is not defined
>>>
答案 0 :(得分:7)
loads
的输入应为字符串:
>>> json.loads('{"bool":true}')
{u'bool': True}
答案 1 :(得分:1)
json.loads
需要一个字符串,必须用引号括起来,如下所示:
o = json.loads(u'{"bool":true}')
print(o) # outputs {u'bool': True}
请注意,u
(在Python 2.x中将字符串设为字符字符串)对于此输入是可选的,只有在使用非ASCII字符时才有必要例如ü,é,编或ℝ。