我写了fib.pyx
包含斐波纳契函数的那个
def fib(int n):
cdef int i
cdef double a=0., b=1.
for i in range(n):
a,b = a+b, a
return a
我得到了pyd模块
import pyximport
pyximport.install()
import fib
效果很好。但是当我稍微编辑fib.pyx
并尝试导入它时,没有任何错误就没有反映出这种变化
在我重新启动ipython后,我尝试了
pyximport.install(reload_support=True)
import fib
fib.fib(10) # good result
# edit fib.pyx
from importlib import reload
reload(fib)
重新加载很好,因为它成功重新加载了现有的fib.pyd
模块。但是我得到了较老的fib功能的结果。
如何使用fib.pyx
重新编译import fib
?
这不可能吗?
Environment:
Python 3.4.3
Windows 7
IPython 3.2.1
答案 0 :(得分:1)
尝试使用autoreload,如果它不起作用我恐怕你必须重新启动内核进程。
[1]: %load_ext autoreload
[2]: %autoreload 2