从Python调用进程

0 投票
1 回答
644 浏览
提问于 2025-04-16 17:22

我在用Python调用一个Perl脚本。这个Perl脚本从一个网络服务器上分批获取大量数据,这个过程需要一些时间。这个Perl脚本是在一个循环里执行的,整体运行得还不错。但是在最后一次循环的时候,当脚本还在下载数据时,Python的其他代码就开始执行了。

我想知道在Python中调用另一个程序的最佳方法是什么。希望在运行Perl脚本时,Python能够等到Perl脚本执行完毕后再继续处理后面的代码,因为后面的Python代码是用来处理下载的数据的。我看过关于线程的内容,但不太确定在我的情况下该怎么实现。

以下是代码:

for expr in names_dict[keys]:
    subprocess.call(["./test.pl", expr, absFilePath])

任何帮助都非常感谢。

谢谢!

1 个回答

0

使用subprocess.Popen()。可以看看这篇博客:

http://trifoliummedium.blogspot.com/2010/12/running-command-line-with-python-and.html

撰写回答