【发布时间】:2012-07-04 11:01:07
【问题描述】:
我有一个可执行文件 (evapo.exe) 必须使用输入文件 (inputs.prj) 调用,通常我只需键入 c:\myfiles\evapo inputs.prj 即可使用 Windows 命令提示符执行此操作(当然可执行文件和输入文件都位于 myfiles 文件夹中)
现在我希望能够使用 python 做同样的事情。 SO上的其他类似问题建议使用wexpect,因为当可执行文件要求运行其他信息时,其他方法(例如子进程)不起作用(在我的情况下,信息是输入文件)。我试过了:
import wexpect
wexpect.run(r'c:\myfiles\evapo.exe')
python 挂起...,如果有人知道我如何使用 cmd 组合 exe 和输入文件,请帮助我。
【问题讨论】:
-
如果您“通过键入 c:\myfiles\evapo inputs.prj”运行它,那么可执行文件不会“要求运行其他信息”,它会从命令行获取所需的一切论据。但是你没有传递任何论据。在不知道 evapo 做什么的情况下无法确定,但我敢打赌,在没有任何参数的情况下,它会读取标准输入,这就是它挂起的原因。