【发布时间】:2013-09-21 09:35:04
【问题描述】:
a1='[{"v1":"value"}, {"v1":"value"}, ]'
b1=json.loads(a1)
创建异常,但是。
a2='[{"v1":"value"}, {"v1":"value"}]'
b2=json.loads(a2)
不会产生任何异常/错误。有人可以帮我理解为什么第一个示例中的最后一个逗号是一个大问题,并且
如何在不修改数据的情况下转换第一个示例?
【问题讨论】:
-
第一个示例不是有效的 JSON 语法。您无法使用符合标准的 JSON 解析器对其进行解析。 Quick'n'dirty 解决方案:通过 Python 的
eval而不是json.loads运行它。 -
你真的应该问为什么1中的数据不干净。如果您正在使用网络服务,为什么不向您发送正确的 json 等。一旦确定您可以查看各种清理方法,包括上面的评论
标签: json string python-2.7 type-conversion