python如何从C访问用Python编写的模块?
你可以通过如下方式获得一个指向模块对象的指针:
module=PyImport_ImportModule("<modulename>");
如果模块尚未被导入(即它还不存在于 sys.modules
中),这会初始化该模块;否则它只是简单地返回 sys.modules["<modulename>"]
的值。 请注意它并不会将模块加入任何命名空间 —— 它只是确保模块被初始化并存在于 sys.modules
中。
之后你就可以通过如下方式来访问模块的属性(即模块中定义的任何名称):
attr=PyObject_GetAttrString(module,"<attrname>");
调用 PyObject_SetAttrString()
为模块中的变量赋值也是可以的。
以上是 python如何从C访问用Python编写的模块? 的全部内容, 来源链接: utcz.com/z/520639.html