Python subprocess.check_output()

Posted

技术标签:

【中文标题】Python subprocess.check_output()【英文标题】: 【发布时间】:2019-04-18 05:46:50 【问题描述】:
mystring = subprocess.check_output(["sudo iwlist wlan0 scan"], universal_newlines=True)
word = 'Devsign2G'
print (mystring)
print (word)

if word in str(mystring):
    print ('success')

-错误信息-

回溯(最近一次通话最后): 文件“test.py”,第 52 行,在 mystring = subprocess.check_output(["sudo iwlist wlan0 scan"], universal_newlines=True) 文件“/usr/lib/python2.7/subprocess.py”,第 212 行,在 check_output 中 进程 = Popen(stdout=PIPE, *popenargs, **kwargs) 文件“/usr/lib/python2.7/subprocess.py”,第 390 行,在 __init__ 读错,写错) _execute_child 中的文件“/usr/lib/python2.7/subprocess.py”,第 1024 行 引发 child_exception OSError: [Errno 2] 没有这样的文件或目录

有什么问题?

【问题讨论】:

【参考方案1】:

有什么问题?

OSError: [Errno 2] No such file or directory 指的是要执行的子进程命令。

程序参数必须按顺序单独传递,所以改变

["sudo iwlist wlan0 scan"]

["sudo", "iwlist", "wlan0", "scan"]

【讨论】:

【参考方案2】:

看起来您的代码正在使用位于以下位置的名为“subprocess”的文件:/usr/lib/python2.7/subprocess.py

但文件或目录不存在。您可以更改目录或将文件放在正确的文件夹中。

如果是打包好的。你是用 pip 还是 sth 安装包的?是进口的吗?

【讨论】:

这个包是 Python 2.7 的内置包。我输入了命令(sudo apt-get install subprocess)但答案是“E:无效操作子进程” 包已经安装,从traceback可以看出。文件子进程在那里,所以这不是问题的根源。

以上是关于Python subprocess.check_output()的主要内容,如果未能解决你的问题,请参考以下文章

001--python全栈--基础知识--python安装

Python代写,Python作业代写,代写Python,代做Python

Python开发

Python,python,python

Python 介绍

Python学习之认识python