如何从另一个Python脚本运行Python脚本并获取返回状态码?

6 投票
2 回答
2760 浏览
提问于 2025-04-17 09:30

我对Python和bash都还比较陌生。不过,我发现Python比bash更直观,也更容易上手。我已经拼凑了一些bash脚本,但我想用Python脚本来替代它们,这样维护起来会更方便。

这些bash脚本主要是运行Python脚本,检查返回的状态码,然后根据状态码采取相应的行动(比如记录信息、发送邮件等等)——我觉得这些功能大部分可以在Python脚本中实现。

不过,有一件事我不太确定,就是如何从一个Python脚本中运行另一个Python脚本,并获取返回的状态码。

有没有人能分享一个代码片段,展示如何从主Python脚本'master.py'中运行一个小的Python脚本'test.py',并在运行完'test.py'后正确获取返回码?

2 个回答

0

我建议你看看Python里的subprocess模块。你可以用它启动另一个进程,操作它的数据流,还能获取返回的状态码。

6

使用 subprocess 模块

主程序文件:master.py

import subprocess
retcode = subprocess.call(["/usr/bin/python", "/path/to/test.py"])
print "Return code of test.py is ", retcode

撰写回答