社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

如何在python中调用包含作为参数的函数的cython cdef()函数?

marcos • 5 年前 • 1188 次点击  

我有一个cdef函数,它的参数中有一个函数。我正在尝试生成一个python“wrapper”函数来调用它。我知道将一个函数定义为cpdef()我将能够访问该函数的python版本。但是,如果我这样做了,我将得到一个错误(如预期的那样),表明python无法识别我提供的函数定义。

有什么建议吗?

我最初的功能是特定于领域的,并且很长时间,但是我认为下面的示例捕获了我所追求的。我要以下的 cFED() 函数定义,

ctypedef double (*ftype) (double)

cdef cy_myfunc(int a,..., double x, ftype f):
  ...
  cdef double result
  result = f(x)

  return result

我想定义如下内容,以便在python中调用它:

def py_myfunc(a,..., x, f):
    return cy_myfunc(a,...,x,f)
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/43218
 
1188 次点击  
文章 [ 1 ]  |  最新文章 5 年前