【发布时间】:2012-04-30 05:03:41
【问题描述】:
抱歉,这个问题已经被问过很多次了。我有一个 DOS .exe 文件。通过在 Windows 中双击它可以很好地工作,这会在工作文件夹中生成一些输出文件。但是,我需要从 Python 调用它。 我尝试了以下命令(subprocess.Popen 和 os.system),但它只打开一个 DOS 窗口而不保存输出文件。那么有人可以给我一个提示吗?
谢谢!
代码
a=subprocess.Popen(r"I:/dosefile.exe")
a1=os.system(r"I:/dosefile.exe")
更新 它通过将.py 脚本文件放入包含dosefile.exe 的折叠中来工作。有没有办法让它在不迁移 .py 文件的情况下工作?
想办法。如果 .py 文件在其他地方,我需要使用 os.chdir() 更改工作文件夹
【问题讨论】:
-
之前讨论过类似的问题。希望this 有所帮助。
-
输出文件是什么意思?您是否正在尝试在您的 py 脚本所在的位置或dosefile.exe 所在的位置创建输出文件
-
也许他想通过管道传输 STDOUT / STDERR 输出。
-
@anselm:输出文件是由dosefile.exe 自动创建的。所以我假设如果我可以从 python 调用这个 DOS exe,我应该有那些生成的输出文件。
-
os.system("I:/dosefile.exe")应该可以工作。将你的 py 脚本复制到I:/并运行os.system("dosefile.exe")
标签: python