从 python 执行 C++ 代码

phi*_*pos 3 c++ python directory file

我是 python 的初学者,我不知道这是否可行。

我在 python 中有一个简单的循环,它为我提供了当前目录中的所有文件。我想要做的是在 python 目录中的所有文件上执行我之前编写的 C++ 代码

建议的 python 循环应该是这样的

import os
for filename in os.listdir(os.getcwd()):
    print filename
    (Execute the code.cpp on each file with each iteration)
Run Code Online (Sandbox Code Playgroud)

有没有机会做到这一点?

cda*_*rke 5

从 Python 执行外部程序相当容易 - 无论使用何种语言:

import os
import subprocess

for filename in os.listdir(os.getcwd()):   
    print filename
    proc = subprocess.Popen(["./myprog", filename])
    proc.wait()
Run Code Online (Sandbox Code Playgroud)

用于参数的列表是特定于平台的,但它应该可以正常工作。您应该更改"./myprog"为您自己的程序(它不必在当前目录中,它将使用 PATH 环境变量来查找它)。

  • 不,这不是特定于 Windows 的,您使用的是哪个操作系统?要添加其他参数,请将它们添加到列表中:`subprocess.Popen(["./myprog", filename, arg1, arg2],...)`。您也许可以使用参数列表的字符串来代替,但通常列表更简单。 (3认同)