json.dumps(..)
和str(..)
之间的区别是什么?
他们不是都将json转换成字符串吗?
答案 0 :(得分:5)
没有。实际上在(我相信大多数)Python的实现中,str(object)
用单引号包装字符串,这是不是有效的JSON。
一个例子:
In [17]: print str({"a": 1})
{'a': 1}
str(boolean)
也无效JSON:
In [18]: print str(True)
True
但是, __str__
可以在用户定义的类中重写,以确保对象返回自己的JSON表示。