美文网首页
装饰器、迭代器、生成器

装饰器、迭代器、生成器

作者: h小吴y | 来源:发表于2020-09-28 10:06 被阅读0次

    装饰器

    -- 用于拓展原来函数功能的一种函数

    -- 在不用更改原函数代码的前提下给函数增加新的功能

    实现装饰器:

    定义 执行

    带参数的装饰器

    from functools import wraps

    @wraps(func)可以保留原函数的一些信息

    定义 执行

    类的装饰器

    定义 执行


    迭代器

    迭代(iterate)意味着重复对此,就像循环那样(list,tuple)

    实现了方法__iter__的对象是可迭代的,而实现了方法__next__的对象是迭代器

    调用__next__时(或next()),迭代器返回其下一个值

    如果迭代器没有可供返回的值,触发StopIteration异常

    从迭代器创建序列

    定义 执行

    通过对可迭代对象调用内置函数iter,可获得一个迭代器

    演示

    生成器

    每次使用yield生成一个值后,函数都将冻结,即在次停止执行

    被重新唤醒后,函数将从停止的地方开始继续执行

    演示

    实例

    迭代器 生成器

    相关文章

      网友评论

          本文标题:装饰器、迭代器、生成器

          本文链接:https://www.haomeiwen.com/subject/zbqhuktx.html