首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python3 wifi模块返回对象,而不是wifi网络列表。

Python3 wifi模块返回对象,而不是wifi网络列表。
EN

Stack Overflow用户
提问于 2016-07-04 18:33:33
回答 1查看 2.3K关注 0票数 2

我刚刚安装了wifi库,并开始遵循指南这里,但当我键入

代码语言:javascript
复制
>>> from wifi import Cell, Scheme
>>> Cell.all('wlan0')

我得到的输出不是一个列表,而是一个对象:

代码语言:javascript
复制
<map object at 0x7ff23b40e588>

我在Ubuntu14.04上使用Python3.4,这看起来确实适用于Python2.7,这很好,但我更喜欢使用3.4。我如何使输出成为一个列表?我认为这只是不同的Python版本对输出的处理方式不同。

编辑:我刚刚开始重新想办法解决这个问题,现在我开始了。

代码语言:javascript
复制
from wifi import Cell

我明白了:

代码语言:javascript
复制
ImportError: cannot import name Cell

我真的很困惑。

再次编辑:

算了,那是我的愚蠢。我编写了一个名为wifi.py的程序来测试它,忘记了在Python中使用模块的整个想法。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-07-04 18:34:43

all方法Cell返回一个map(...)。在Python2.x中,这将自动返回一个列表,但是Python3.x返回一个map对象(一个迭代器),它可以通过调用列表上的list来转换为一个列表。

因此,您可以通过对返回的对象调用list来查看wifi网络的完整列表:

代码语言:javascript
复制
>>> list(Cell.all('wlan0'))

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38190545

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档