【发布时间】:2014-12-16 14:19:51
【问题描述】:
从question 开始,我询问了如何从python-qgis 获取版本信息,@falsetru 提供了一个出色的解决方案,我遇到了一个问题,即导入qgis.utils 似乎隐藏了所有异常。在解释器中运行以下代码,我没有得到任何回溯,或者在引发异常后有任何有用的信息,见下文。
>>> import qgis.utils
>>> qgis.utils.QGis.QGIS_VERSION
'2.4.0-Chugiak'
>>> raise Exception('boof!')
>>>
有人能告诉我如何在导入qgis-utils 或从python-qgis 获取版本信息而不需要导入utils 的其他方式后打开回溯吗?
非常感谢!
【问题讨论】:
-
你试过
traceback模块吗?如果不导入回溯并使用traceback.print_exc或 ... 之类的函数。 -
恐怕我对
traceback模块没有太多经验。我尝试按照您的建议运行traceback.print_exc(),但没有成功。我将阅读该模块。我也注意到了警告模块。会不会也和这个有关? -
可能是的。也许您导入过滤警告的模块使用
warnings模块。 -
看来我可以使用
qgis.core.QGis.QGIS_VERSION来获取版本信息,所以我毕竟不需要使用utils。然而,这仍然是一个问题,我将继续研究。
标签: python exception qgis traceback