0

假设我需要在 python 中执行以下操作:

import os
os.system("a.out 1 \n 3 \n 2 \n 5 \n 2...")

这里我有单独的字符串来存储参数:

par="1 \n 3 \n 2 \n 5 \n 2..."

不知道如何在 python 中将其通过管道传输到“a.out”。谢谢!

4

2 回答 2

3

假设您想将该字符串传递给标准输入,

import subprocess

p = subprocess.Popen(['a.out'], stdin=subprocess.PIPE)
p.communicate('1 \n 3 \n 2 \n 5 \n 2...\n')

编辑:因为你想从文件中读取,这实际上更容易。

import subprocess
subprocess.call(['a.out'], stdin=file('a.inp'))
于 2012-05-18T21:00:55.550 回答
0

你可以试试:

os.system('a.out %s' % par)
于 2012-05-18T21:37:38.440 回答