可以使用communicate()
方法来获取Popen
对象的标准输出和标准错误输出。communicate()
方法会等待子进程执行完毕,并返回一个包含标准输出和标准错误输出的元组。下面是一个示例代码:
import subprocess # 执行一个命令 process = subprocess.Popen(['ls', '-l'], stdout=subprocess.PIPE, stderr=subprocess.PIPE) # 等待子进程执行完毕并获取标准输出和标准错误输出 output, error = process.communicate() # 打印标准输出和标准错误输出 print("Standard Output:", output.decode()) print("Standard Error:", error.decode())
在这个示例中,我们使用Popen
执行了ls -l
命令,并通过communicate()
方法获取了命令的标准输出和标准错误输出。最后,我们将输出内容打印出来。