Raise Python Exception from a C Extension



For the above module, we need to prepare following setup.py script −

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

Now, we use the following command,

$ python setup.py install

Once we install the extension, we would be able to import and call that extension in our Python script test.py and catch the exception in it as follows −

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

This would produce the following result −

bad format char passed to Py_BuildValue
Updated on: 2019-09-27T07:58:58+05:30

184 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements