我现在已经有很多对象可以使用for循环, 而且相对于其他语言, pytyonfor循环的使用方式非常优雅, 简洁和便利.

for循环的背后就是迭代器.

迭代器使用遍及 python ,并且使用方式统一.


for使用迭代器的步骤简述如下:

  1. 调用内置函数 iter(container) , 把容器作为参数传递进去, 返回一个对象, 这个对象就是一个迭代器对象. 容器对象就是指的咱们前面说str, list等.

  2. 迭代器对象中有一个方法__next()__, 这个方法每调用一次, 就可以访问到容器中的一个元素. 我们自己要调用的话, 不用直接调用这样双两下划线方法, 调用内置函数next(it)放就可以了, 迭代器作为参数.

  3. 当容器中最后一个元素被迭代后, 再调用__next()__方法, 则会抛出一个StopIteration异常, for循环捕捉到这个异常后就可以终止循环了.


用迭代器访问字符串元素

s = "acdefgh"
# 获取字符串 s 的迭代器, 其实等价于 it = s.__iter__()
it = iter(s)
print(next(it))# 迭代第一个元素
print(next(it))
print(next(it))
print(next(it))
print(next(it))

用迭代器访问list元素

s = [10, 30, 40, 20, 2]
it = iter(s)
print(next(it))
print(next(it))
print(next(it))
Copyright © 李振超 2018 all right reserved,powered by Gitbook
该文件最后修订时间: 2018-02-25 07:12:09

results matching ""

    No results matching ""