我试图通过我编写的几个C函数来扩展Python解释器。从阅读文档,为了公开这些功能,用户必须导入包含功能的模块。扩展Python:预加载我的C模块
是否有可能通过C API来加载预加载或预导入模块,使用户不必键入import <mymodule>
?或者更好,from <mymodule> import <function>
?我可以在Py_Initialize()后面执行PyRun_SimpleString(“from mymodule import myfunction”);我可以在Py_Initialize()之后执行PyRun_SimpleString(“from mymodule import myfunction”)。 - 我只是想知道是否有另一种方式来做到这一点..?
编辑2:换句话说,我有一个用C语言编写的嵌入Python解释器的应用程序。该应用程序提供了一些我想要公开给用户的功能,以便他们可以为应用程序编写简单的Python脚本。我所要做的就是取消编写from mymodule import myfunction1, myfunction2
的需求,因为它是非常专业化的应用程序,并且脚本无论如何都不会在没有应用程序的情况下工作,所以一直要求import ...
毫无意义。
为什么你需要这样做?为什么? – shylent 2009-12-26 14:47:29
“,以便用户不必键入导入” –
EcirH
2009-12-26 14:51:51
根据您的编辑,它是一个脚本,因此您可以在脚本中添加'from mymodule import ...'。没有人需要再输入那个。 – 2009-12-26 18:59:45