Python subprocess.run() 方法执行并等待脚本完成

要使用 subprocess.run() 执行 Python 脚本并等待脚本执行完成,可以按照以下方式进行:


python

import subprocess

# 脚本的文件路径
script_path = "/path/to/your/script.py"

# 使用 subprocess.run() 执行脚本
subprocess.run(["python", script_path], capture_output=True, text=True)

# 程序会在这里等待脚本执行完成

在上述代码中:

  • "python" 是要执行的命令。
  • [script_path] 是命令的参数,即你要执行的Python脚本的路径。
  • capture_output=True 参数表示捕获子进程的标准输出和标准错误流。返回的结果将会是一个 CompletedProcess 对象,其 stdout 和 stderr 属性分别包含标准输出和标准错误的内容。
  • text=True 参数表示将捕获的输出以文本形式返回(在Python 3.7及以上版本有效)。
  • subprocess.run() 会阻塞当前进程,直到被调用的命令执行完成。执行完成后,程序才会继续执行后续的代码。如果你不想捕获输出,可以去掉 capture_output 参数。

    作者:三希

    物联沃分享整理
    物联沃-IOTWORD物联网 » Python subprocess.run() 方法执行并等待脚本完成

    发表回复