在Python 中,os.system 用於執行系統命令並傳回一個值指示命令的退出狀態。但是,命令的輸出通常顯示在螢幕上。在某些情況下這可能並不理想。
要將命令輸出指派給變數並防止其顯示在螢幕上,可以使用 os.popen() 函數而不是 os.system。 os.popen() 傳回一個管道對象,您可以使用它來讀取指令的輸出。
import os # Use os.popen to capture the output of the command popen_object = os.popen('cat /etc/services') # Read the output from the pipe object output = popen_object.read() # Print the output, which will not be displayed on the screen print(output)
或者,您可以使用更強大的 subprocess.Popen 類別來管理子進程並與子進程通訊。以下是使用 subprocess.Popen 得到相同結果的方法:
import subprocess # Create a subprocess object proc = subprocess.Popen(['cat', '/etc/services'], stdout=subprocess.PIPE) # Communicate with the subprocess and retrieve its output output, _ = proc.communicate() # Print the output, which will not be displayed on the screen print(output)
以上是如何在不顯示螢幕的情況下在 Python 中捕獲系統命令輸出並將其分配給變數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!