我想捕获一个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/