在 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中文网其他相关文章!