我想捕获 NameError,然后访问该名称并使用它来提供更好的消息。如何在不解析错误消息的情况下访问导致错误的名称?
try:
love_bug = herbie
except NameError as err:
name = get_name(err)
print(name, 'unknown.')
换句话说,我如何在上面的代码中实现 get_name() ?
最佳答案
您必须从 NameError.args[0]
中提取名称:
>>> try:
... print(foo)
... except NameError as e:
... print(re.search("'(?P<name>.+?)'", e.args[0]).group('name'))
...
foo
关于python - 如何访问NameError中的名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44731553/