装饰器第1天

2022-09-11

装饰器

装饰器的定义:

  装饰器是一种特殊的闭包函数,该闭包函数中有且只有一个参数,且该参数是一个函数类型。

装饰器的作用:

  装饰器可以给已有函数添加新的功能。

装饰器的特点(区别与其他函数):

  (1)它不会改变原来函数调用的方式。

  (2)它不会改变原来函数的源代码。

  (3)可以给原来的函数添加新的功能。

与装饰器配合使用的是:

   装饰器语法糖。

装饰器语法糖的使用格式:

  @装饰器名称

装饰器语法糖的作用:

  类似于一种既定模式,设置后,表示原来函数有一个装饰器。

注意:在执行一个包含装饰器函数的Python代码,当内存加载该函数后,会先执行装饰器代码。

 

装饰器使用举例:

 1 def func_out(func):
 2     def inner():
 3         print("登陆成功")
 4         func()
 5     return inner
 6 
 7 @func_out
 8 def func():
 9     print("发表评论")
10 
11 func()

  说明:

    (1)第1-5行是声明了一个装饰器,它本质上是一个闭包。第3行表示要给原来函数增加的功能。第1行原来的函数作为一个参数传入。

    (2)在第7行中,是一个装饰器语法糖的声明。表示下面的函数要用到装饰器。

    (3)第8行指的是原来的函数。

    (4)第11行,调用原来的函数,有了装饰器后,执行装饰器内的代码。

  运行结果图:

  装饰器第1天

 

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:装饰器第1天 - Python技术站

(0)
上一篇 2023年4月2日 下午5:00
下一篇 2023年4月2日 下午5:00

相关文章

  • python中组合数据的操作

    2022-09-26 组合数据类型:  列表     字典     集合     元组 拷贝:     deep(深拷贝)     shallow(浅拷贝)     区别:例如,文件中有一个指针指向另一块存储空间,如果是深拷贝则将指向的那一块文件内容也全部拷贝,如果是浅拷贝那么不需要将指针指向的内容进行拷贝,只拷贝第一层级的内容。指针指向的内容属于第二层级。…

    Python开发 2023年4月2日
    00
  • 学习笔记——美多商城——1 美多商城项目准备

    2022-10-23 步骤: 一、创建工程仓库 (1)在“码云”上创建一个仓库,在本地盘符中创建一个文件夹,右击,使用git,将远程仓库的内容克隆到本地仓库中,点击“Git Bash Here”。将刚刚创建的远程仓库克隆,使用的命令是“git clone 刚刚远程仓库的地址(点击(克隆/下载)按钮会出现一个网址)”。之后,系统会弹出弹框,要求输入Gitee中…

    Python开发 2023年4月2日
    00
  • 装饰器的使用

    2022-09-17 装饰器的使用实例——获得计时函数所用时间: 1 import time 2 # 定义装饰器函数 3 def decorator(fun): 4 def inner(): 5 # 获得开始时间 6 start = time.time() 7 # 执行计时函数 8 fun() 9 # 执行计时函数之后所用的时间 10 end = time.…

    Python开发 2023年4月2日
    00
  • 创建Django项目

    2022-09-24 在创建Django项目时,出现了    错误,查了一下,发现要创建一个Django项目,需要先使用命令: python -m pip install pytz 安装一个“时区模块”。一般错误提示中出现“xxx”模块没有发现,大概率是要进行安装一个模块或者其他。 之后创建一个Django项目: django-admin startproj…

    2023年4月2日
    00
  • Redis与Python连接实例

    2022-09-22 1、 Redis与Python建立连接之前需要先安装“Redis”安装包: 在ubantu中,打开终端,输入命令: sudo pip install redis 此时,是安装Python2.0的版本。 一般来说,是将3.0和2.0的版本都安装,安装3.0的命令: sudo pip3 install redis 2、python与redi…

    2023年4月2日
    00
  • 学习笔记——Django项目中的请求与响应

    2022-10-01 ALLOWED_HOSTS “ALLOWED_HOSTS”的含义:   它是指允许放在“ALLOWED_HOSTS”的主机进行访问后端 “ALLOWED_HOSTS”的说明:   它一般默认是“127.0.0.1”,如果添加上其他的主机的话,其他主机也可访问此项目的view,但是此时,需要手动将”127.0.0.1″加入到“ALLOWE…

    Python开发 2023年4月2日
    00
  • 创建一个Django项目总结

    2022-09-25  首先,要安装好虚拟环境,之后要切换到虚拟环境中,使用的命令 workon 创建好的虚拟环境的名称 之后,创建一个Django项目使用的命令: django-admin startproject 项目名称 进入到该项目的目录下,创建一个子应用,使用的命令: python manage.py startapp 要创建的子应用的名称 其中 …

    Python开发 2023年4月2日
    00
  • 学习笔记——Django项目中的请求

    2022-10-03 url中的位置参数  位置参数存放的位置   是子应用中的自定义的“urls.py”文件中的路由中。 位置参数的设置:   如果位置参数很多,那么在自定义中的路由文件中可以使用正则表达式。位置参数就是在浏览器搜索中对应的关键词时,能够跳转到相应的界面。界面内容的设置是在子应用的“views.py”页面中。 子应用中的“urls.py”文…

    Python开发 2023年4月2日
    00
合作推广
合作推广
分享本页
返回顶部