一尘不染

从python调用非python程序?

python

我目前正在努力从python脚本调用非python程序。

我有一个〜1000个文件,当通过此C ++程序传递时,将生成〜1000个输出。每个输出文件必须具有唯一的名称。

我希望运行的命令具有以下形式:

program_name -input -output -o1 -o2 -o3

到目前为止,我已经尝试过:

import os

cwd = os.getcwd()

files = os.listdir(cwd)

required_files = []

for i in file:
    if i.endswith('.ttp'):
         required_files.append(i)

因此,我有一个必要文件的数组。我的问题-如何遍历数组并为每个条目将其作为参数传递给上述命令(program_name),并为每个文件指定唯一的输出ID?


阅读 267

收藏
2021-01-20

共1个答案

一尘不染

您可以为此目的使用子流程

import os
import subprocess

cwd = os.getcwd()

for i in os.listdir(cwd):
    if i.endswith('.ttp'):
        o = i + "-out"
        p = subprocess.call(["program_name", "-input", i, "-output", o])
2021-01-20