我的程序中有一个嵌入式python解释器。我想导出一个模块,其中包含我的程序中定义的值,并能够从python脚本中更改它们。例如
在c:
int x = 1;
:
import embedded
embedded.x = 2
在c:
printf("%d",x);
输出:
2
这是可能的,还是我必须导出函数来改变c?
中的任何内容答案 0 :(得分:0)
无需导出函数,但最简单的方法是使用PyModule_GetDict()
和PyDict_GetItemString()
来获取分配给x
属性的值。
答案 1 :(得分:0)
如果您不想在C代码中主动检查PyObject的值,我认为您需要导出函数来修改C中的表示。我不是专家,但我认为没有自动映射。