从 Python 调用 c++ 文件
Posted
技术标签:
【中文标题】从 Python 调用 c++ 文件【英文标题】:Calling a c++ file from Python 【发布时间】:2020-01-20 18:40:30 【问题描述】:我有一个 Python 代码,在运行其中的所有内容后,我希望它只运行我在同一目录中的一个 c++ 文件。我读过关于 Cython 和 BoostPython 的文章,但我认为这不是我需要的(显然我可能是错的)。我不想调用函数,只需运行 c++ 算法。有什么简单的方法吗?
【问题讨论】:
python和c++程序之间需要共享数据吗? 当你说“c++文件”是指源文件还是可执行文件? 不,@snek_case,我只想运行 c++ 程序。 @foreknownas_463035818 源文件。 您需要先将源 C++ 文件编译(翻译)为可执行文件,然后才能运行它。您可以让 Python 运行编译器并指定您的程序(以及其他命令行参数),然后让 Python 运行可执行程序。另一种方法是为 C++ 查找或创建解释器。 【参考方案1】:您可以尝试在脚本中将其作为子进程打开,如下所示:
import subprocess
subprocess.call(["g++", "hello_world.cpp"])
tmp=subprocess.call("./a.out")
print("printing result")
print(tmp)
【讨论】:
以上是关于从 Python 调用 c++ 文件的主要内容,如果未能解决你的问题,请参考以下文章