当前位置: 首页 > 面试题库 >

Python-将os.system的输出分配给变量,并防止其在屏幕上显示

仲法
2023-03-14
问题内容

我想将我运行的命令的输出分配给os.system变量,并防止将其输出到屏幕。但是,在下面的代码中,输出将发送到屏幕,并且打印的值var0,我猜这表明该命令是否成功运行。有什么方法可以将命令输出分配给变量,也可以阻止它在屏幕上显示?

var = os.system("cat /etc/services")
print var #Prints 0

问题答案:

400

从我很久以前问过的“ Python中的Bash反引号等效 ”中,你可能想使用的是popen

os.popen('cat /etc/services').read()

从Python 3.6的文档中,

这是使用subprocess.Popen实现的;有关更强大的方法来管理子流程和与子流程进行通信,请参见该类的文档。

这是对应的代码subprocess

import subprocess

proc = subprocess.Popen(["cat", "/etc/services"], stdout=subprocess.PIPE, shell=True)
(out, err) = proc.communicate()
print "program output:", out


 类似资料:
  • 问题内容: 我试图获取查找栏的值,只要它发生更改并在下面显示。我正在使用我的seekbar上的方法来调用此方法。 问题答案: 这里有一些额外的帮助: 使用该事件检查搜索栏的进度,您可以将该int返回以在应用程序的其他地方使用它。

  • 我一直在试图找到一种简单的方法来读取Rust中的变量,但是到目前为止还没有任何运气。Rust Book中的所有示例处理字符串AFAIK,我找不到任何有关整数或浮点数的工作。

  • 问题内容: 在Python中,可以分割字符串并将其分配给变量: 但在Go中似乎无效: 问题: 如何在一个步骤中拆分字符串并分配值? 问题答案: 例如两个步骤 输出: 例如一个步骤 输出:

  • 问题内容: 当我尝试从使用PyQt5 Designer创建的qtextedit中获取文本时,出现错误或“ Python停止工作”,并且脚本自动停止。我尝试了多种解决方案,但没有任何效果。我必须将文本从qtextedit分配给变量,以检查进程是否运行。那是PyQt5生成的代码: 此处的按钮代码: 这里的代码用于从文本框中获取文本并分配给变量: 结束码: 问题答案: 没有任何方法,如果要获取必须使用的

  • 这是我目前所拥有的,但它不起作用。如何连接所有内容?我认为问题在于逗号。

  • 在Bash脚本中,我想定义一个布尔变量y来存储另一个布尔变量x的求反值。以下脚本, 将变量y设置为1。如何更改y,使其计算结果改为false?