我最近遇到了cython 的 sentdex 教程。在尝试他的教程代码时,我注意到我们将如何在编译之前调试我们的 cython 代码。
example_original.py
我们可以通过在解释器中运行来调试原始代码。
#example_original.py
def test(x):
y = 0
for i in range(x):
y += i
return y
print test(20)
但是 cythonized 代码不起作用。这是我尝试过的两种方法
1)py文件
#example_cython.py
cpdef int test(int x):
cdef int y = 0
cdef int i
for i in range(x):
y += i
return y
print test(5)
错误
File "example_cython.py", line 3
cpdef int test(int x):
^
SyntaxError: invalid syntax
2).pyx 文件
#example_cython.pyx
cpdef int test(int x):
cdef int y = 0
cdef int i
for i in range(x):
y += i
return y
print test(5)
错误
./example_cython: not found
在编译之前调试 cython 代码的正确方法是什么?