Следуя приведенному здесь примеру, «Augementing .pxd», я пытаюсь использовать файлы «.pxd», чтобы увеличить чистый файл python. (Добавьте определения типов, внешние к файлу чистого python).Использование файлов cython .pxd для файлов чистого питона Augment
питон файл:
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)
У меня есть словарь, который я по умолчанию это "None" в питона. К сожалению, cython это не нравится.
Если я использую мой «чистый» файл питон, без объявления типа или объявить тип как «Словарь» в файле PXD я получаю ошибку:
"Signature not compatible with previous declaration"
я заметил, что он будет собирать, если я НЕ указывайте значение по умолчанию, но есть причина для объявления значений по умолчанию.
Есть ли способ, которым это может быть обработано?
Спасибо теперь я получил эту работу. Следующая проблема заключается в определении метода __init__ в файле pxd ... – monkut