2013-02-10 3 views
2

Я хочу знать, как я могу создать список объектов C в Cython.создать список объектов в Cython

Этот простой пример рабочего:

cimport Cython

b = real_test() 
print(b) 

cdef real_test(): 
    cdef int a 
    cdef Node b = Node() 
    a = b.h 
    return a 

cdef class Node: 
    cdef int h 
    def __cinit__(self): 
     self.h = 3 

, но не это:

cimport cython 

b = real_test() 
print(b) 

cdef real_test(): 
    cdef int a 
    cdef Node *b = [Node(),Node(),Node()] 
    a = b[0].h 
    return a 

cdef class Node: 
    cdef int h 
    def __cinit__(self): 
     self.h = 3 

Как это сделать?

благодаря

ответ

1

Я не уверен, что это правильно, но это работа:

cimport cython 

b = real_test() 
print(b) 

cdef real_test(): 
    cdef int a 
    cdef list b = [Node(),Node(),Node()] 
    a = b[0].h 
    return a 

cdef class Node: 
    cdef int h 
    def __cinit__(self): 
     self.h = 3 
    property h: 
     def __get__(self): 
      return self.h 
     def __set__(self, float value): 
      self.h = value 
Смежные вопросы