python中多列表的Json处理

python中多列表的Json处理,python,json,Python,Json,我从数据库中获取列表中的多个数据并将其附加到另一个列表中,所以我的数据看起来是这样的 data= [["a","b","c"],["1","2","3"]] 如果我尝试Json转储并加载此数据,则在加载端会出现错误 data2 = str.encode(json.dumps(data)) st = bytes.decode(data2) msg = json.loads(st) raise JSONDecodeError("Expecting value", s,err.value) fro

我从数据库中获取列表中的多个数据并将其附加到另一个列表中,所以我的数据看起来是这样的

data= [["a","b","c"],["1","2","3"]]
如果我尝试Json转储并加载此数据,则在加载端会出现错误

data2 = str.encode(json.dumps(data))
st = bytes.decode(data2)
msg = json.loads(st)

raise JSONDecodeError("Expecting value", s,err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

但是这不会发生在一个单一的列表中,我不确定你用所有的str/字节编码/解码试图实现什么,但这是非常简单的

import json

data = [["a", "b", "c"], ["1", "2", "3"]]
json_str = json.dumps(data)
print(json_str)
# '[["a", "b", "c"], ["1", "2", "3"]]' <- a string
python_list = json.loads(json_str)
print(python_list)
# [['a', 'b', 'c'], ['1', '2', '3']] <- back to Python list

您想要这样的json:{data:[[a,b,c],[1,2,3]}

对于此输出,这是代码

data= [["a","b","c"],["1","2","3"]]
import json
data_dict = {'data':data}
data2 = json.dumps(data_dict)
print(data2)

下面是一个Json转储和加载数据的解决方案

import json
data= [["a","b","c"],["1","2","3"]]

# print(data)

data2 = json.dumps(data)
print(data2)
msg = json.loads(data2)
print(msg)

所有的str/字节编码/解码是怎么回事?为什么不以另一种方式使用json.dumpsdata和json.loads呢?您检查过了吗?您显示的代码没有重现问题。这应该很好地回答了问题-这是否回答了您的问题?我的脚本没有这么简单,我写了一个简单的代码,这样我的问题会更有效率,我的脚本包括一个线程服务器和一个客户端,我可能会编辑它,这样它就反映了我的代码的确切性质。谢谢大家,我找到了一种解决方法,尽管它不是最好的,原来Json.load对于包含太多列表且每个列表中包含太多项的列表有问题,因此在转储后,它无法加载它,我想知道为什么Json会这样,这使我的工作更加困难,因为现在我有一个包含100列的sql表。与其使用sql语句SELECT*FROM TABLE,在另一种情况下,为了避免json错误,我必须从表中选择col1、col2、col3,将其分成更小的块