How do you get cimport to work in Cython?

2019-07-19 01:21发布

问题:

I have a directory structure as so:

/my_module

init.py

A/

  __init__.py

  a.pyx

B/

  __init__.py

  b.pyx

In b.pyx I want to cimport functions from A.a. A regular python import works, but a cimport always fails.

Also, I'm compiling A/ and B/ separately because I couldn't figure out how to put a setup.py in the top module.

Can anyone help here?

回答1:

You have to create a cython declaration file, a .pxd

It shall contain only declarations of classes and functions that you want to import.