json加载无法加载字典列表

时间:2019-05-08 08:11:49

标签: json python-3.x

我在使用$(document).ready(function () { var questionBank=new Array; var wordArray=new Array; var previousGuesses=new Array; var currentWord; var currentClue; var wrongAnswerCount; questionBank= [["1976","Year School Opened"]]; //I expect the output of Year School Opened to be 1976, But at the moment I can only input Letters. 加载字典列表时遇到问题,我得到的错误是 TypeError:JSON对象必须是str,字节或字节数组,而不是“ list”

这是我正在使用的示例代码

json.loads()

这是我通过邮递员原始JSON发送的请求正文

def put(self, request, *args, **kwargs):
    tasks = request.data['schedules']
    task_list = json.loads(tasks)
    print(task_list)

因此,schedule是一个字段,其中包含字典作为值的列表。

我尝试过{ "schedules": [ {"name":"A","job":{"minute" : "0", "hour" : "1"}}, {"name":"B","job":{"minute" : "0", "hour" : "1"}}] } ,然后尝试json.dumps(tasks),还尝试了json.loads(tasks.decode(“ utf-8”)),但遇到相同的错误。

1 个答案:

答案 0 :(得分:1)

您需要先从请求数据中解析json,然后再将其用作字典:

def put(self, request, *args, **kwargs):
    data = json.loads(request.data)
    tasks_list = data['schedules']
    print(task_list)

编辑:显然您的请求数据已经是字典,所以:

def put(self, request, *args, **kwargs):
    tasks_list = request.data['schedules']
    print(task_list)