擅长:python、mysql、java
<p>可能有点猜测,但我认为您真的想从生成器中提取下10个唯一值,在这种情况下,列表理解可能很棘手,甚至您的循环示例也不会真正做到这一点。要获得10个下一个唯一值:</p>
<pre><code> def gen():
for n in [1,2,3,4,5,5,5,5,5,5,5,5,6,7,8,9,10,11,12]:
yield n
l = []
g = gen()
while len(l) < 11:
try:
v = next(g)
except StopIteration:
break
if v not in l:
l.append(v)
print l
</code></pre>