【发布时间】:2010-10-04 03:56:39
【问题描述】:
按照此处的示例“Augementing .pxd”,我正在尝试使用“.pxd”文件来扩充纯 Python 文件。 (在纯 python 文件之外添加类型定义)。
python 文件:
class A(object):
def foo(self, i=3, x=None):
print "Big" if i > 1000 else "Small"
pxd 文件:
cdef class A:
cpdef foo(self, int i, x)
我有一本字典,我在 python 中默认为“无”。 不幸的是,cython 不喜欢这样。
如果我使用我的“纯”python 文件,而不在 pxd 文件中声明类型或将类型声明为“dict”,我会收到错误:
“签名与之前的声明不兼容”
我注意到如果我不指定默认值,它将编译,但声明默认值是有原因的。
有什么办法可以处理吗?
【问题讨论】: