在捕获异常时,我得到了以下Exception
:
>>> exc_type
<class 'pymysql.err.ProgrammingError'>
是否有一种简单的方法来获取pymysql
的值,因此我可以看到它来自哪个导入/模块?当前我正在做的事情:
>>> exc_type.__module__.split('.')[0]
'pymysql'
但这似乎有点粗糙。获得该价值的最佳方法是什么?
答案 0 :(得分:1)
您可以尝试inspect.getmodule
:
>>> module = inspect.getmodule(exc_type)
>>> module
<module 'pymysql.err' from 'C:\\Python36\\lib\\site-packages\\pymysql\\err.py'>
>>> module.__name__
pymysql.err
>>> module.__package__
pymysql