190716 Python 内置函数之iter

文章目录
  1. 1. case1
  2. 2. case2
  • II. 其他
    1. 1. 一灰灰Blog: https://liuyueyi.github.io/hexblog
    2. 2. 声明
    3. 3. 扫描关注
  • iter主要用来生成迭代器,简单来讲就是可以将一个obj对象,生成迭代器,可以走for循环

    1. case1

    注意:obj对象要求实现__iter__()或者__getitem__()方法

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    >>> class A:
    ... def __init__(self):
    ... self.a = [1, 2, 3, 4]
    ... def __iter__(self):
    ... return iter(self.a)
    ...
    >>> a = A()
    >>> for i in iter(a):
    ... print(i)
    ...
    1
    2
    3
    4

    2. case2

    此外,iter还可以接收第二个参数,这种场景下,第一个参数要求是可以调用的对象(如函数,实现了call方法的对象),第二个参数为终止信号,如

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    >>> import random
    >>> def m():
    ... return random.choice(range(10))
    ...
    # 当返回数据为4时,结束迭代
    >>> for i in iter(m, 4):
    ... print(i)
    ...
    3
    5
    7
    2
    9

    II. 其他

    1. 一灰灰Bloghttps://liuyueyi.github.io/hexblog

    一灰灰的个人博客,记录所有学习和工作中的博文,欢迎大家前去逛逛

    2. 声明

    尽信书则不如,以上内容,纯属一家之言,因个人能力有限,难免有疏漏和错误之处,如发现bug或者有更好的建议,欢迎批评指正,不吝感激

    3. 扫描关注

    一灰灰blog

    QrCode

    # Python

    评论

    Your browser is out-of-date!

    Update your browser to view this website correctly. Update my browser now

    ×