如何从 C 扩展区引发 Python 异常?


对于上述模块,我们需要准备以下 setup.py 脚本 −

from distutils.core import setup, Extension
setup(name='helloworld', version='1.0', \
ext_modules=[Extension('helloworld', ['hello.c'])])

现在,我们使用以下命令:

$ python setup.py install

安装好扩展区后,我们就能在自己的 Python 脚本 test.py 中导入并调用该扩展区,并像下面一样捕获其中的异常 −

#test.py
import helloworld
try:
print helloworld.helloworld()
except Exception as e:
print str(e)

这将产生以下结果 −

bad format char passed to Py_BuildValue

更新于: 27-Sep-2019

149 次浏览

开启职业生涯

完成课程即可获得认证

快速入门
广告