使用 Python 运行另一个程序?
使用 Python 运行另一个程序?
这个问题已经有了答案:
我有一个从命令行运行的程序,它看起来像这样:
$ program a.txt b.txt
这个程序需要两个文本文件作为参数。我正在尝试编写一个 Python 3.2 脚本来运行上面的程序。我该如何做呢?目前,我正在尝试像这样使用 subprocess
模块:
import subprocess with open("a.txt", mode="r") as file_1: with open("b.txt", mode="r") as file_2: cmd = ['/Users/me/src/program', file_1, file_2] process = subprocess.Popen(cmd, stdout=subprocess.PIPE) for line in process.stdout: print(line)
我阅读了这篇文章和 这里 的帖子,它们似乎描述了类似于我的问题的解决方案。不幸的是,在阅读这些帖子之后,我仍然无法让我的 Python 代码运行我的程序。
有人可以帮忙吗?提前感谢!
admin 更改状态以发布 2023年5月21日
看看@Chris的答案,还有:
Subprocess 不等待命令完成,因此你应该使用 wait
方法。
process = subprocess.Popen(cmd, stdout=subprocess.PIPE) process.wait() for line in process.stdout: print(line)