这里的问题是您使用
cdef而不是定义了方法
def。
cdef方法只能从
cython代码中调用。
您可以在文档的Python函数与C函数部分中找到详细信息。
就像在Python中一样,Python函数是使用def语句定义的。他们将Python对象作为参数并返回Python对象。
使用新的cdef语句定义C函数。它们采用Python对象或C值作为参数,并且可以返回Python对象或C值。
重要的部分:
在Cython模块中,Python函数和C函数可以自由调用,但是解释后的Python代码只能从模块外部调用Python函数。因此,任何要从Cython模块“导出”的函数都必须使用def声明为Python函数。



