【发布时间】:2019-12-04 08:32:50
【问题描述】:
我希望能够通过 C++ 调用 python 脚本中的函数。该函数会将一些文本打印到标准输出。
但是,python 脚本需要大约 1 分钟才能将全局变量加载到内存中,所以我想在交互模式下保持进程处于活动状态,这样我就可以简单地再次调用函数而无需再次加载所有变量。
我知道我可以使用system 运行系统命令,但是必须先终止命令,然后才能使用输出。我也知道我可以使用 CPython 并在文件上调用 PyRun_SimpleFileEx,但这将不得不再次重新加载所有变量
我没有任何代码可以显示,因为我不知道该怎么做。有什么方法可以做到这一点,而无需用 C++ 重写整个 python 脚本?
【问题讨论】:
-
所以你有一个使用这些全局变量的方法,但你只想加载这些变量一次。对吗?
-
是的,没错
-
能否编辑脚本,将要多次调用的代码作为函数公开?
-
我要运行几次的代码已经是Python中的一个函数了。但是,它依赖于一些加载缓慢的全局变量。我想从 C++ 程序中调用该函数。我希望这有助于澄清。