Python 2.7 Cython:如何在pxd文件中声明默认值

Python 2.7 Cython:如何在pxd文件中声明默认值,python-2.7,cython,default-value,Python 2.7,Cython,Default Value,我想将一个函数抽象为一个可导入的模块: cdef list generate_random_vectors(int num_vectors, int length, float scale=1): cdef list return_list np.random.seed() return_list = [] for n in range(num_vectors): return_list.append((1 - 2 * np.random.rand(len

我想将一个函数抽象为一个可导入的模块:

cdef list generate_random_vectors(int num_vectors, int length, float scale=1):
    cdef list return_list
    np.random.seed()
    return_list = []
    for n in range(num_vectors):
    return_list.append((1 - 2 * np.random.rand(length)) / scale)
    return return_list
要将其放入模块中,我必须在pxd文件中定义它

当我尝试这个:

cdef list generate_random_vectors(int num_vectors, int length, float scale)
cdef list generate_random_vectors(int num_vectors, int length, float scale=1)
我得到一个错误:函数签名与前面的声明不匹配

当我尝试这个:

cdef list generate_random_vectors(int num_vectors, int length, float scale)
cdef list generate_random_vectors(int num_vectors, int length, float scale=1)

我得到了错误:预期为“'),找到了“INT”

找到了它。pxd文件中的语法不同

我需要使用:

cdef list generate_random_vectors(int num_vectors, int length, float scale=*)