擅长:python、mysql、java
<p>这是因为过滤器真正转换的是一个<em>迭代器</em>。在您开始使用迭代器的结果之前,这个迭代器实际上不会做任何事情,在本例中,当您将其强制转换为列表时。<code>people2</code>是一个可以过滤人员列表的东西,当对其调用list时,它会遍历人员列表并传递过滤后的结果。现在迭代器已经完成了,就并没有什么可以迭代的了,所以当您第二次调用它的list时,这里就什么也没有了。在</p>
<p>阅读本文了解更多细节-<a href="https://stackoverflow.com/questions/20535342/lazy-evaluation-python">Lazy evaluation python</a></p>