subprocess用法,python2 subprocess
subprocess模块打算来替代几个过时的模块和函数,如: os.system, os.spawn*, os.popen*, popen2.*命令。
subprocess :
执行参数提供的命令。
我们可以使用数组作为参数或字符串作为参数来运行命令(通过设置参数shell=True)
请注意,参数shell默认为False。
我们用subprocess.call()来做一个统计磁盘的例子:
Subprocess.call([df ,-h])以下示例将shell设置为True:
Subprocess.call (du-hs $ home ,shell=True)注意,python官方文档为参数shell=true声明了一个警告3360。
现在,我们来看看输入与输出
子流程。波本()
子流程模块中的基本流程创建和管理由Popen类处理。
子流程。用Popen代替os.popen我们来做一些真实的例子,subprocess.popen需要一个数组作为参数:
请注意,虽然您可以使用“shell=True”,但不建议这样做。
如果您知道您只使用几个有限的函数,如Popen和PIPE,您可以只指定这些函数:
Popen.communicate()
communicate()函数返回一个元组(标准输出和错误)。
Popen.communicate()和进程通信:将数据发送到标准输入。从标准输出和错误中读取数据,直到遇到终止符。等待该过程结束。
输入参数应该是传递给子进程的字符串,如果没有数据,则为None。基本上,当您使用communicate()函数时,意味着您必须执行命令。
以上内容可以消化理解~更多python实用知识,点击进入PyThon学习网教学中心。
(推荐操作系统:windows7系统,Python 3.9.1,戴尔G3电脑。)
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。