zoukankan      html  css  js  c++  java
  • 生成器

    """
    生成器:
    首先要了解生成器的  关键单词   yield
    然后就是生成器 就是用户自己定义的迭代器    所以本质上还是迭代器
    例子:      """
    def func():
        print("iter")
        yield 111
        print("next")
        yield 222
        print("iter")
        yield 333
        print("next")
        yield
    """
    yield   后面跟的值就是调用了迭代器,__next__方法,你所得到的值
    yield 既可以返回一个值也可以返回多个值 并且多个值也是按照元组的形式返回的
    """
    g=func()  #  g 现在等于func 只要g加了括号那么就是调用了上面func这个函数
    print(g)   #没有加括号的就等于是函数的内存地址
    print(g.__next__())
    print(g.__next__())
    #结果:iter
    #     111
    #     next
    #     222
    #这个结果就说明  每一次他都会停yield那里 
    """在不使用range的情况下
    for i in range(1,10,2)
        print(i)
        做到和上面一样的结果
    """
    def func(start,end,step):
        while start<end:
            yield start
            start +=step
    for i in func(1,10,2):
        print(i)
  • 相关阅读:
    【AngularJS】学习资料
    Anaconda环境安装
    ORM表之间高级设计
    drf序列化和反序列化
    安装与使用django-restframework
    django-restframework
    顶象滑块验证码
    Restful接口规范
    Web API接口
    BBS配置
  • 原文地址:https://www.cnblogs.com/yangxinpython/p/11190936.html
Copyright © 2011-2022 走看看