Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我想使用 Cython 编译一个 Python 模块,该模块与一个字典一起工作,该字典的所有键都是类型的,比如说,整数(或无论其他静态和已知类型),以及 unicode 类型的所有值(或其他静态和已知)。
现在,为了加快速度,我可以声明
cdef dict Dict
并且
cdef int k cdef unicode v
但是,我可以对整个“dict int->unicode”结构进行静态声明吗?
谢谢,
我认为简短的回答是否定的。Cython仍在使用内置的Python字典。如果您将对象声明为dict ,它可以利用一些优化,但最终dict必须能够存储不同类型的对象,因此您不能在编译时指定键或值类型。但是您应该首先检查以确保这是一个瓶颈。Python字典相当不错。