gpt4 book ai didi

python - SWIG:如何将 python 文件合并到 swig 生成的最终模块文件中

转载 作者:行者123 更新时间:2023-11-28 05:19:45 28 4
gpt4 key购买 nike

据我所知,在用于将 c++ 文件编译为 python 扩展模块的 .i 文件中,我们可以添加一些 python 代码,如下所示(来自 example for adding additional python code 的示例):

/* Rewrite the high level interface to set_transform */
%pythoncode %{
def set_transform(im,x):
a = new_mat44()
for i in range(4):
for j in range(4):
mat44_set(a,i,j,x[i][j])
_example.set_transform(im,a)
free_mat44(a)
%}

然后,python函数出现在创建的python扩展模块中。

如果我有很多 python 函数,我想将它们添加到创建的 python 模块中,我该怎么办?我不想将所有 python 代码放入

%pythoncode %{
...
%}

环境。

谢谢大家。

PS:我想要的是将一个python文件的上下文合并到swig生成的最终.py模块文件中。

PSS:我在Comments in %pythoncode damaged #379页面找到了解决方案: 使用语句 %pythoncode "x.py"x.py 的所有上下文导入到 swig 生成的最终 .py 文件中。

最佳答案

您可以将代码放在另一个 Python 模块中,然后:

%pythoncode %{
import other
%}

或者,如果您想要扩展命名空间中该模块中的所有函数:

%pythoncode %{
from other import *
%}

关于python - SWIG:如何将 python 文件合并到 swig 生成的最终模块文件中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41774205/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com