我有一个 Excel 文件,我使用
pandas
从中检索数据。我有一本字典,其中的键与我从 Excel 文件的单元格中获取的字符串相同。例如,我有一个包含字符串 Heattreatment 1
的 Excel 单元格。在我的字典中,我有一个键值对:"Heattreatment 1": 1
。问题是,如果我的 Excel 文件中有拼写错误,例如,如果我写的是 Heattreatment 1
而不是 Heattreatment 123
,而我的字典中不存在这样的键,我会得到 KeyError: 'Heattreatment 123'
。
有没有办法提取此消息,以便我会说:
error_data = #something
print(error_data)
输出将是:
'Heattreatment 123'
我尝试过:
try:
# some code
except Exception as e:
print(e)
但这不起作用。
如果您专门捕获 KeyError 而不是一般的异常,那么您的最后一个示例应该可以工作。如果可能,您应该捕获尽可能具体的错误。
try:
# some code
except KeyError as error:
print(error)
您还可以使用字典中内置的 .get() 方法,定义默认值并随后检查它。
value = dictionary.get("MyKey", None)
if value is None:
# Handle as if it was an error
希望这有帮助!