3

我正在尝试按照此处显示的问题中的答案进行操作,但是在组合我的两个 json 对象时仍然遇到了一些麻烦。

我有两个从网络调用返回的 JSON 对象,我将它们存储在名为:likes_datacomments_data. 这些中的每一个当前都是空的 JSON 对象(仅在我的测试用例中),当打印到屏幕上时显示:{"data":[]}.

现在我想将这两个(有时是空的)JSON 对象组合成一个对象并将其打印到屏幕上,但我遇到了一些麻烦,因为最终组合的对象中总是有转义引号。

编码:

data = { 'likes' : likes_data, 'comments' : comments_data }
self.response.out.write(json.dumps(data))

结果是:

{
  "likes": "{\"data\":[]}", 
  "comments": "{\"data\":[]}"
}

由于转义引号,这显然是格式不正确的 JSON 响应。

有没有合适的方法在 Python 中组合两个 JSON 对象?对于简单的情况,我可以手动取消转义这些,但我希望能够管理更复杂的“数据”对象。

有人有建议吗?

干杯,布雷特

4

1 回答 1

13
likes = json.loads(likes_data)
comments = json.loads(comments_data)
data = {'likes': likes['data'], 'comments': comments['data']}
self.response.out.write(json.dumps(data))

像这样?

于 2012-08-24T14:26:09.853 回答