重新加载页面时出现键错误

2024-10-03 17:15:48 发布

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

所以我有一个问题,每当我刷新页面,我得到一个关键的错误,它完美地工作,第一次重新加载页面,但失败的第二次。你知道吗

大致结构如下:

def myAPICall()

    response = myclient.REST(URL)

    data = response.json()

    return data


@app.route('/index', methods=['GET'])
def passData():
    data = myAPICall()

    for x in data:
        make some changes to the dictionary

    return (render_template('index.html', data=data))

在刷新我的页面时,我在'data'字典中的一个键上得到一个keyerror。你知道吗

如果我重新启动服务器,它将正常工作,但下次刷新时,KeyError将再次出现。你知道吗

任何想法都将不胜感激,我已经尝试了好几天来解决这个问题。你知道吗

错误消息:

[ d2['id'] for d2 in data if d2['asset_id'] == d1['id'] ]

KeyError: 'id'

Tags: inidfordataindexreturnresponsedef
1条回答
网友
1楼 · 发布于 2024-10-03 17:15:48

从错误消息中,我假设data包含对象列表。现在,并不是所有这些对象都有键id。因此,与其直接在d1d2中查找,不如使用d2.get('id', 'alternate_default_value')。你知道吗

现在,如果您想知道为什么缺少密钥,您需要提供更多的细节,即您正在获取的数据类型等

相关问题 更多 >