zoukankan      html  css  js  c++  java
  • 闭包函数及装饰器

    Day12 闭包函数及装饰器

    闭包函数

    def f1():

    ​ def f2():

    ​ print("f2函数")

    ​ return f2

    f2 = f1()

    闭包函数:

    闭包函数把 闭包函数内部变量 + 闭包函数内部的函数 这两者包裹再一起然后通过返回值形式返回出来

    闭包函数至少也得符合函数嵌套

    装饰器

    装饰器:装饰(新增加了一个额外的功能)

    装饰器本质就是一个 给函数增加功能的函数

    装饰器:给函数 增加功能的函数 增加功能时需要注意以下两点:

    1. 不改变原函数源代码
    2. 不改变原函数调用方式
    def decorators(func):
    
    ​       def wrapper(*args,**kwargs):
    
    ​        res = func(*args,**kwargs)
    
    ​        return res 
    
    return wrapper
    
    
    

    二层装饰器

    1. 用来装饰函数的,它本质是函数
    2. 不改变源代码
    3. 不改变调用方式

    装饰器模板

    def decorator(func):
        def wrapper(*args,**kwargs):
            res = func (*args,**kwargs)
            return res
        return wrapper
    @decorator()
    

    迭代器引入

    可迭代 对象:含有__iter__ 方法的就叫做可迭代对象

    迭代器:含有__iter__ 和__next__方法的就叫做迭代器

    生成器:含有yield关键字的函数就叫做生成器

  • 相关阅读:
    读取.robot文件写入excel文件中示例
    提示框、滚动条处理与JS的应用
    下拉框
    切换框架ifame
    层级定位
    定位一组元素
    Appium元素定位方法
    python+appium基本启动配置
    adb命令使用
    Python接口测试框架搭建
  • 原文地址:https://www.cnblogs.com/kaizi111/p/11622426.html
Copyright © 2011-2022 走看看