检查一个密钥不存在

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了检查一个密钥不存在相关的知识,希望对你有一定的参考价值。

我有这样的列表,下面是示例。如何使用python在没有“隐藏”键的情况下提取数据?像第二个。

我的代码是

if tab['label'] == 'toolname' and 'hidden' not in tab :
        print(course['id'], tab['label'], tab['hidden'])

我有

KeyError:'隐藏'错误,如何编写代码以替换''隐藏'不在标签中'

[{
    'id': 'context_external_tool_35702',
    'html_url': '/courses/1242593/external_tools/35702',
    'full_url': 'https://url/courses/1242593/external_tools/35702',
    'position': 35,
    'hidden': True,
    'visibility': 'admins',
    'label': 'toolname',
    'type': 'external',
    'url': 'https://url/api/v1/courses/1242593/external_tools/sessionless_launch?id=35702&launch_type=course_navigation'
}

,

{
    'id': 'context_external_tool_35702',
    'html_url': '/courses/1235556/external_tools/35702',
    'full_url': 'https://url/courses/1235556/external_tools/35702',
    'position': 19,
    'visibility': 'admins',
    'label': 'toolname',
    'type': 'external',
    'url': 'https://url/api/v1/courses/1235556/external_tools/sessionless_launch?id=35702&launch_type=course_navigation'
}]
答案

你的if语句工作正常。问题是,当tab['hidden']不在'hidden'时,你打印的最后一件事是tab。只打印idlabel

print(course['id'], tab['label'])

以上是关于检查一个密钥不存在的主要内容,如果未能解决你的问题,请参考以下文章

检查 Berkeley DB C++ API 中是不是存在密钥 [关闭]

字典说密钥不存在

播放框架检查密钥是不是存在

如何检查以下响应中是不是存在数据密钥?

将记录作为键映射 - 如何检查Erlang中是否存在密钥

如何检查 word2vec 训练模型中是不是存在密钥