Python标准库 subprocess 模块多进程编程详解
import subprocess
# 使用subprocess.run()运行命令
result = subprocess.run(['echo', 'Hello World'], capture_output=True, text=True)
print(f'stdout: {result.stdout}') # 打印输出
print(f'stderr: {result.stderr}') # 如果有错误,打印错误信息
# 使用subprocess.Popen()运行命令
proc = subprocess.Popen(['ls', '-l'], stdout=subprocess.PIPE, stderr=subprocess.PIPE, text=True)
stdout, stderr = proc.communicate()
print(f'stdout: {stdout}') # 打印输出
print(f'stderr: {stderr}') # 如果有错误,打印错误信息
这段代码演示了如何使用subprocess
模块中的run()
和Popen()
两种方法来运行系统命令,并捕获它们的输出和错误信息。run()
方法是一个简单的接口,适合于需要等待命令执行完毕后再继续的情况。而Popen()
则提供了更多的灵活性,可以异步管理子进程。
评论已关闭