我刚刚安装了wifi库,并开始关注指南here,但是当我输入
时>>> from wifi import Cell, Scheme
>>> Cell.all('wlan0')
我得到的输出不是一个列表,而是一个对象:
<map object at 0x7ff23b40e588>
我在Ubuntu 14.04上使用Python 3.4,这似乎适用于Python 2.7,这很好,但我更喜欢使用3.4。如何将输出作为列表?我认为它只是不同Python版本以不同方式处理输出的情况。
编辑:我刚刚开始尝试再次弄明白,现在我做了
from wifi import Cell
我明白了:
ImportError: cannot import name Cell
我真的很困惑。
再次编辑:
没关系,那是我愚蠢的。我创建了一个名为wifi.py的程序来测试它,忘记了Python中模块的全部概念。
答案 0 :(得分:3)
all
Cell
方法返回map(...)
。在Python 2.x中,这将自动返回一个列表,但是Python 3.x返回一个map
对象(一个迭代器),可以通过调用list
将其转换为一个列表在它上面。
因此,您可以通过在返回的对象上调用list
来查看完整的wifi网络列表:
>>> list(Cell.all('wlan0'))