我有一个用 Cython 包装的函数:
cdef extern from "myheader.h":
int c_my_func (const_char *a, const_char* b)
还有一个暴露给 Python 的函数:
def my_func(a, b):
c_my_func(a, b)
该函数c_my_func接受 NULL 作为参数a和b。当我从口译员那里调用它时:
my_func(None, None)
它抛出异常:
TypeError: expected string or Unicode object, NoneType found
如何让这个函数接受None并传递NULL给c_my_func? 我不想手动检查None然后传递NULL。我还尝试在 的 cdef 上使用默认参数,c_my_func但它不起作用。