我有一些变量应该在程序中全局访问。由于它们经常使用,我考虑给它们一个类型,据我理解这将加快速度。
但我无法这样做。在Jupyter Notebook的一个块中,我有以下代码:
%%cython
cdef int magic_number = 42
在下一个区块中,我收到了以下错误信息:
print(magic_number)
---------------------------------------------------------------------------
NameError Traceback (most recent call last)
<ipython-input-34-a40fcb730ac3> in <module>()
----> 1 print(magic_number)
NameError: name 'magic_number' is not defined
cpdef
也无法使用。如何获取全局变量?
cdef class
以外的任何cdef
都只能通过Cython访问。这两个函数是使用Cython编译的(因此在Cython块中),但可以从Python调用。它们的目的是提供一种从Python访问变量的方式。 - DavidW