1

我正在做一个模拟股票市场的项目。人们买卖股票,我想将每一轮都称为脚本,以尝试针对市场的策略。

我想要的是 C++ 中的一个函数,它将整数向量作为参数发送到返回 3 个整数数组的 vba 或 python 脚本。

我已经搜索了一个解决方案,但我能找到的只是一种在 python 中执行脚本的方法,但我不知道如何从这个脚本发送和获取参数。我认为我的问题很常见,但我不知道去哪里寻找解决方案。

谢谢!

(我不是以英语为母语的人,如果我犯了语法错误,很抱歉)

4

3 回答 3

1

在 Windows 上,您可以使用该功能CreateProcess()来启动另一个程序。使用 python 解释器的完整路径作为第一个参数。从 Python 脚本的路径开始第二个参数。

如果您可以用 32768 个字符拟合表示向量的字符串,则可以在 CreateProcess 的第二个参数中提供向量。

一个更灵活的选项是创建一个具有重定向输入和输出的子进程,如此处所示。然后,您可以将向量写入 python 进程的标准输入,并从其标准输出中读取答案。

于 2012-12-27T12:49:42.883 回答
0

有很多方法可以做到这一点。

我这样做的方法是popen()你的“脚本”[类似于“python myscript.py -arg1 -arg2”]。根据向量的大小,您可以将其存储在文件中,也可以将其作为参数的一部分传递[Windows 中的参数字符串有 8KB 之类的限制]。

然后输出将显示为 popen() 管道的结果。

于 2012-12-27T12:33:48.263 回答
0

使用Boost.Python。它将帮助您将 python 嵌入到您的应用程序中。

于 2012-12-27T13:48:04.253 回答