# 生成器,迭代器
列表生成式
def f(n):
return n**3
a = [f(x) for x in range(1,10)]
print(a)
------------
[1, 8, 27, 64, 125, 216, 343, 512, 729]
a = (x for x in range(1,10))
print(a) #<generator object <genexpr> at 0x000000C197A839E8> generator生成器
a = (x for x in range(4))
print(a)
print(next(a)) #等价于a.__next.__() in py2:s.next()
print(next(a))
print(next(a))
print(next(a))
print(next(a))
----------------
0
1
2
3
StopIteration
尽管绝大多数容器都提供了某种方式来获取其中的每一个元素,但这并不是容器本身提供的能力,而是 可迭代对象 赋予了容器这种能力,当然并不是所有的容器都是可迭代的。