如何解决dropwhile() 返回值
你能帮我理解这个返回值背后的机制吗-
with open('zones_list.txt') as fin:
print(dropwhile(lambda L: '21:33:00:02:ac:07:e9:ea' not in L,fin))
print(list(dropwhile(lambda L: '21:33:00:02:ac:07:e9:ea' not in L,fin)))
结果:
<itertools.dropwhile object at 0x0000024EFD4E2200>
['port-wwn (vendor) :10:00:00:90:fa:a0:4f:aa (Emulex) \n','node-wwn :20:00:00:90:fa:a0:4f:aa\n','class :3\n','node-ip-addr :0.0.0.0\n','ipa :ff ff ff ff ff ff ff ff\n','fc4-types:fc4_features :\n','symbolic-port-name :\n','symbolic-node-name :\n','port-type :N \n','port-ip-addr :0.0.0.0\n','fabric-port-wwn :20:06:8c:60:4f:63:bb:f0\n','hard-addr :0x000000\n','permanent-port-wwn (vendor) :00:00:00:00:00:00:00:00 \n','connected interface :fc1/6\n','switch name (IP address) :c3-cs9148-06 (15.112.40.103)\n','\n','Total number of entries = 189\n','\n']
Process finished with exit code 0
问题: 第一个打印给出了一个值对象。 第二次打印,打印一个从“条件失败的地方”到文件末尾迭代的列表。
帮我理解区别,第一次打印应该也给一个系列的对象值吧?为什么它只停在一个对象值? list 是一个构造吗?哪个会自动迭代?
谢谢, 苏兰德拉
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。