可以使用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()
方法獲取了命令的標準輸出和標準錯誤輸出。最后,我們將輸出內容打印出來。