列表生成式
[x for x in range(1, 11)];
最基本的列表生成式。 表示将range(1,11)
进行循环,取出x.赋给list
带有判断的列表生成式
[x for x in range(1, 11) if(x>5)]
只有一些简单用法。
生成器
(x for x in range(1, 11))
和列表生城式的用法基本一样,将[]
换为()
生成器特别的地方
- 生成器保存的变量是算法而不是具体的数。通过
next()
方法获取里面的值,当没有元素可获取的时候会抛出StopIteration
异常。