我需要有一组 python 对象用于创建 trie 数据结构。我需要一个结构,它像元组一样是固定长度,像列表一样是可变的。我不想使用列表,因为我希望能够确保列表的大小完全正确(如果它开始分配额外的元素,那么随着 trie 变大,内存开销可能会很快增加)。有没有办法做到这一点?我尝试创建一个对象数组:
cdef class TrieNode:
cdef object members[32]
...但这给出了一个错误:
Error compiling Cython file:
------------------------------------------------------------
...
cdef class TrieNode:
cdef object members[32]
^
------------------------------------------------------------
/Users/jason/src/pysistence/source/pysistence/trie.pyx:2:23: Array element cannot be a Python object
做我想做的事情的最佳方法是什么?