[英]Converting a JSON strings list to a JSON array in Python
将此列表包含两个JSON strings
:
myJSONStringList = ['{"user": "testuser", "data": {"version": 1, "timestamp": "2018-04-03T09:23:43.388Z"}, "group": "33"}',
'{"user": "otheruser", "data": {"version": 2, "timestamp": "2018-04-03T09:23:43.360Z", }, "group": "44"}']
如何将其转换为JSON数组? 这是我想要的输出:
[{"user": "testuser", "data": {"version": 1, "timestamp": "2018-04-03T09:23:43.388Z"}, "group": "33"},
{"user": "otheruser", "data": {"version": 2, "timestamp": "2018-04-03T09:23:43.360Z", }, "group": "44"}]
我知道我可以通过执行myJSONStringList.replace("'", "")
来做一个肮脏的解决方案,但是通过使用例如json
模块,是否有任何pythonic解决方案?
提前致谢
将JSON字符串解码为dicts并将它们放入列表中,最后将列表转换为JSON
json_list = []
json_list.append(json.loads(JSON_STRING))
json.dumps(json_list)
或更多pythonic语法
output_list = json.dumps([json.loads(JSON_STRING) for JSON_STRING in JSON_STRING_LIST])
使用json.dumps
之前json.loads
将数据转换成字典对象这也有助于防止valueError: Expecting property name enclosed in double quotes
。
例如:
import json
myJSONStringList = ['{"user": "testuser", "data": {"version": 1, "timestamp": "2018-04-03T09:23:43.388Z"}, "group": "33"}',
'{"user": "otheruser", "data": {"version": 2, "timestamp": "2018-04-03T09:23:43.360Z", }, "group": "44"}']
print([json.loads(json.dumps(i)) for i in myJSONStringList])
输出:
[u'{"user": "testuser", "data": {"version": 1, "timestamp": "2018-04-03T09:23:43.388Z"}, "group": "33"}', u'{"user": "otheruser", "data": {"version": 2, "timestamp": "2018-04-03T09:23:43.360Z", }, "group": "44"}']
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.