首页 > 解决方案 > 将多个列表的字符串拆分为多个 json 对象

问题描述

我有一串多个列表,每个列表包含多个 json 对象

'[{"user": "use1", "fullname": "full1"}][{"user": "use2", "fullname": "full2"}, {"user": "use3", "fullname": "full3"}][{"user": "use4", "fullname": "full4"}]'

预期的结果应该是

[{"user": "use1", "fullname": "full1"},{"user": "use2", "fullname": "full2"},{"user": "use3", "fullname": "full3"},{"user": "use4", "fullname": "full4"}]

如何将 json 对象放入一个列表中?

标签: jsonpython-3.x

解决方案


            data = data.split('[')[1:]

            data=[line[:-1] for line in data]

            elts = []
            for i in range(len(data)):
                try:
                    elt = json.loads(data[i], encoding='utf-8')
                    elts.append(elt)
                except Exception as e:
                    line= '[' + data[i] + ']'
                    elt = json.loads(line, encoding='utf-8')
                    elts.extend(elt)

推荐阅读