给定一个单行字符串,包含多个任意嵌套的json文件,没有分隔符,例如:
contents = r'{"payload":{"device":{"serial":213}}}{"payload":{"device":{"serial":123}}}'
如何将contents
解析为dicts/json数组?我试着
df = pd.read_json(contents, lines=True)
但是只得到一个ValueError响应:
ValueError: Unexpected character found when decoding array value (2)
您可以拆分字符串,然后将每个JSON字符串解析为字典:
import json
contents = r'{"payload":{"device":{"serial":213}}}{"payload":{"device":{"serial":123}}}'
json_strings = contents.replace('}{', '}|{').split('|')
json_dicts = [json.loads(string) for string in json_strings]
输出:
[{'payload': {'device': {'serial': 213}}}, {'payload': {'device': {'serial': 123}}}]