Computer >> Máy Tính >  >> Lập trình >> Python

Làm thế nào để nâng cao ngoại lệ Python từ một phần mở rộng C?

Đối với mô-đun trên, chúng ta cần chuẩn bị tập lệnh setup.py sau -

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

Bây giờ, chúng tôi sử dụng lệnh sau,

$ python setup.py install

Khi chúng tôi cài đặt tiện ích mở rộng, chúng tôi sẽ có thể nhập và gọi tiện ích mở rộng đó trong tập lệnh Python test.py của chúng tôi và bắt ngoại lệ trong đó như sau -

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

Điều này sẽ tạo ra kết quả sau -

bad format char passed to Py_BuildValue