当前位置: 首页> 文旅> 美景 > 网络平台怎么制作_建筑材料网_网站提交入口百度_百度百家官网入口

网络平台怎么制作_建筑材料网_网站提交入口百度_百度百家官网入口

时间:2025/7/10 12:06:26来源:https://blog.csdn.net/tian_nx/article/details/143100164 浏览次数:0次
网络平台怎么制作_建筑材料网_网站提交入口百度_百度百家官网入口

day43 装饰器

学习日期:20241020

学习目标:函数 - 56 装饰器:函数嵌套的定义与调用的区别

学习笔记:

变量作用域

变量读取顺序:local-》enclosed-》global-》builtin

# 变量作用域
# 全局变量
number=100
def foo():number2 = 200 # 本地变量print(f'函数内部{number2}')
# 优先调用本地变量,未找到本地变量会调用全局变量
foo()  # 函数内部200
# 函数外部不可调用函数内部变量
print(f'函数外部{number2}') # 提示 name 'number2' is not defined

闭包

# 闭包
def out():number3=120 # 闭包变量def fun_in():return number3return fun_inf=out() # 返回对象 fun_in ,也可以写成out()()
print(f()) # 调用fun_in函数,返回number3的值120
装饰器语法

# 装饰器
import  time
print(time.time())from functools import wraps
def time_it(func):@wraps(func)def wrapper():start=time.time()func()stop=time.time()print(f'func 函数一共执行了{int(stop-start)}秒')return wrapper@time_it
def work():print('func函数开始执行')time.sleep(1)print('func函数执行结束')work()
#func函数开始执行
# func函数执行结束
# func 函数一共执行了1秒# 调用@wraps装饰器,不改变内置对象
print(work.__name__)

自带装饰器

总结
  1. 变量作用域保证同名,但不同作用范围不会出现引用错误
  2. 装饰器可以使函数功能更明确,更容易实现函数抽象
  3. 系统内置装饰器可以辅助用户编写更复杂的函数功能
  4. 闭包作用域之内,内部函数可以访问外部函数的变量
关键字:网络平台怎么制作_建筑材料网_网站提交入口百度_百度百家官网入口

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: