for循环的数据类型有以下几种:list、tuple、dict、set、str等;generator,包括生成器和带yield的generator function。for循环的对象统称为可迭代对象:Iterable。isinstance()判断一个对象是否是Utterable对象。next()函数调用并不断返回下一个值的对象称为迭代器:Iterator。Iterator对象,但list、dict、str虽然是Iterable,却不是Iterator。list、dict、str等Iterable变成Iterator可以使用iter()函数:for循环的对象都是Iterable类型; 凡是可作用于next()函数的对象都是Iterator类型,它们表示一个惰性计算的序列;list、dict、str等是Iterable但不是Iterator,不过可以通过iter()函数获得一个Iterator对象。for循环本质上就是通过不断调用next()函数实现的for循环本质上就是通过不断调用next()函数实现的,例如:for x in [1, 2, 3, 4, 5]: pass实际上完全等价于:
Foo/|-- bin/
| |-- foo
|
|-- foo/
| |-- tests/
| | |-- __init__.py
| | |-- test_main.py
| |
| |-- __init__.py
| |-- main.py
|
|-- docs/
| |-- conf.py
| |-- abc.rst
|
|-- setup.py
|-- requirements.txt
|-- README
简要解释:
原文:http://www.cnblogs.com/wspkh/p/5771300.html