相关疑难解决方法(0)

如何重新加载Python3 C扩展模块?

我为Python 3.2写了一个C扩展(mycext.c)。该扩展依赖于存储在C标头(myconst.h)中的常量数据。头文件由Python脚本生成。在同一脚本中,我利用了最近编译的模块。Python3 myscript(未完整显示)中的工作流程如下:

configure_C_header_constants() 
write_constants_to_C_header() # write myconst.h
os.system('python3 setup.py install --user') # compile mycext
import mycext
mycext.do_stuff()
Run Code Online (Sandbox Code Playgroud)

第一次在Python会话中,此方法效果很好。如果我在同一会话中重复该过程(例如,在单元测试的两个不同测试用例中),则始终会(重新)加载mycext的第一个编译版本。

如何有效地使用最新的编译版本重新加载扩展模块?

module reload python-3.x

6
推荐指数
1
解决办法
1931
查看次数

标签 统计

module ×1

python-3.x ×1

reload ×1