循环遍历列表并根据条件将值添加到其他列表Python/JSON时出错

2024-04-24 15:59:21 发布

您现在位置:Python中文网/ 问答频道 /正文

allReqs = getReqs(searchQuest, emptyList)  
toDoList = []
for x in allReqs:
    questData = next((i for i in response.json()['quests'] if i['title']== allReqs[allReqs.index(x)]),None)
    data = OrderedDict()
    for key in ('title','status','difficulty','members','questPoints','userEligible'):
        data[key] = questData.get(key,'')
    #print(json.dumps(data,indent=4))
    #print(data['status'])
    if data['status'] == "NOT_COMPLETED":
        toDoList.append(data['title'] + "REDDD")
    elif data['status'] == "COMPLETED":
        toDoList.append(data['title'] + "GREENNN")
    else:
        print("something broke")

ERROR MESSAGE: ['Diamond in the RoughGREENNN'] ['Diamond in the RoughGREENNN', 'Stolen HeartsGREENNN'] Traceback (most recent call last): File "questing.py", line 58, in data[key] = questData.get(key,'') AttributeError: 'NoneType' object has no attribute 'get'

有没有办法解决这个问题?如果需要,我可以发布更多的代码。 我试图搜索一个名称列表,对照json响应检查它们,如果找到了它们的'title',则检查'status',并根据'status'的值将它们附加到另一个列表中,该列表将在最后打印

谢谢


Tags: keyinjson列表fordatagetif