Python KeyError 异常处理示例

什么是Python KeyError异常

当我们尝试从不存在的 dict 访问键时,会引发 Python KeyError。 它是内置异常类之一,由许多使用 dict 或具有键值对的对象的模块引发。

Python KeyError 与字典

让我们看一个由程序引发 KeyError 的简单示例。

emp_dict = {'Name': 'Pankaj', 'ID': 1}

emp_id = emp_dict['ID']
print(emp_id)

emp_role = emp_dict['Role']
print(emp_role)

上面程序输出结果如下

Python KeyError 异常处理示例

Python KeyError 异常处理

我们可以使用 try-except 块来处理 KeyError 异常。 让我们处理上面的 KeyError 异常。

emp_dict = {'Name': 'Pankaj', 'ID': 1}

try:
    emp_id = emp_dict['ID']
    print(emp_id)

    emp_role = emp_dict['Role']
    print(emp_role)
except KeyError as ke:
    print('Key Not Found in Employee Dictionary:', ke)

上面程序处理 KeyError 异常之后的运行结果如下所示

Python KeyError 异常捕获处理

访问字典键时避免 KeyError

我们可以通过使用 get() 函数来访问键值来避免 KeyError。 如果缺少 key,则返回 None。 我们还可以指定在缺少键时返回的默认值。

emp_dict = {'Name': 'Pankaj', 'ID': 1}

emp_id = emp_dict.get('ID')
emp_role = emp_dict.get('Role')
emp_salary = emp_dict.get('Salary', 0)

print(f'Employee[ID:{emp_id}, Role:{emp_role}, Salary:{emp_salary}]')

上面程序运行结果如下

Employee[ID:1, Role:None, Salary:0]

Pandas DataFrame 中有一些函数会引发 KeyError 异常。

什么是Python KeyError异常

当我们尝试从不存在的 dict 访问键时,会引发 Python KeyError。 它是内置异常类之一,由许多使用 dict 或具有键值对的对象的模块引发。

Python KeyError 与字典

让我们看一个由程序引发 KeyError 的简单示例。

emp_dict = {'Name': 'Pankaj', 'ID': 1}

emp_id = emp_dict['ID']
print(emp_id)

emp_role = emp_dict['Role']
print(emp_role)

上面程序输出结果如下

Python KeyError 异常处理示例

Python KeyError 异常处理

我们可以使用 try-except 块来处理 KeyError 异常。 让我们处理上面的 KeyError 异常。

emp_dict = {'Name': 'Pankaj', 'ID': 1}

try:
    emp_id = emp_dict['ID']
    print(emp_id)

    emp_role = emp_dict['Role']
    print(emp_role)
except KeyError as ke:
    print('Key Not Found in Employee Dictionary:', ke)

上面程序处理 KeyError 异常之后的运行结果如下所示

Python KeyError 异常处理示例

访问字典键时避免 KeyError

我们可以通过使用 get() 函数来访问键值来避免 KeyError。 如果缺少 key,则返回 None。 我们还可以指定在缺少键时返回的默认值。

emp_dict = {'Name': 'Pankaj', 'ID': 1}

emp_id = emp_dict.get('ID')
emp_role = emp_dict.get('Role')
emp_salary = emp_dict.get('Salary', 0)

print(f'Employee[ID:{emp_id}, Role:{emp_role}, Salary:{emp_salary}]')

上面程序运行结果如下

Employee[ID:1, Role:None, Salary:0]

Pandas DataFrame 中有一些函数会引发 KeyError 异常。

 

免责声明:
1.本站所有内容由本站原创、网络转载、消息撰写、网友投稿等几部分组成。
2.本站原创文字内容若未经特别声明,则遵循协议CC3.0共享协议,转载请务必注明原文链接。
3.本站部分来源于网络转载的文章信息是出于传递更多信息之目的,不意味着赞同其观点。
4.本站所有源码与软件均为原作者提供,仅供学习和研究使用。
5.如您对本网站的相关版权有任何异议,或者认为侵犯了您的合法权益,请及时通知我们处理。
火焰兔 » Python KeyError 异常处理示例