【发布时间】:2015-07-06 14:19:21
【问题描述】:
我有一个接受字符串并输出另一个字符串的可执行文件。现在我需要将一个文件作为输入提供给它并将输出写入另一个文件。标准命令类似于以下executable_path < input > output。现在我把它包装在 python 中。但我得到错误。
cmd = [executable_path , '<', 'tmp/input.txt', '>',
'tmp/output.txt']
p = subprocess.Popen(cmd)
p.communicate()
无效参数:
我也尝试加入 cmd 参数:
cmd = [executable_path, ' '.join(['<', 'tmp/input.txt', '>',
'tmp/output.txt'])]
无效参数:
tmp/output.txt
将命令作为字符串传递也不起作用。
p = subprocess.Popen(' '.join(cmd))
OSError: [Errno 2] 没有这样的文件或目录
我在这里错过了什么?
【问题讨论】:
标签: python subprocess popen