python3装饰器例子_python3装饰器用法示例
装饰器在编写后台的逻辑时有可能会用到,比方说一个场景:公司的员工想要登录自己公司的考勤记录系统去修改自己的考勤,以前是随便谁都有权限去修改,这样老板不同意了,现在,要在你登录前加一个权限验证的逻辑,如果你权限没有达到等级要求,你就不能登录系统去修改自己的考勤记录。如何在不改动原函数的情况下去增加这部分权限验证的功能呢?这就用到的装饰器函数。
装饰器函数的一大有点就是,在不改动原函数的基础上,去给函数增加新的功能。
装饰器有两种,一种是没有参数的,一种是有参数的,本示例两种装饰器都有,不过只运行了有参数的。
有关用法和解释在代码中已经注释。下面是一个例子。
运行结果:请输入你的姓名:赵总
正在对赵总进行权限验证
验证通过
尊敬的赵总, 现在您可以登录管理系统进行管理
# 这可是领导,老板要查岗,必须得通过啊
请输入你的姓名:钱经理
正在对钱经理进行权限验证
验证通过
尊敬的钱经理, 现在您可以登录管理系统进行管理
# 这是顶头上司,也要好好巴结一下
请输入你的姓名:小王
正在对小王进行权限验证
对不起,小王,您没有权限登录,请有点自知之明。
# 这是同事,说话比较随意
请输入你的姓名:老李
你tm是谁啊,数据库里都找不到你,滚犊子。
# 这不是我们公司员工 ,不用客气
请输入你的姓名:
python3装饰器例子_python3装饰器用法示例相关推荐
- python3装饰器例子_python 装饰器(三):装饰器实例(一)
示例 7-15 定义了一个装饰器,它会在每次调用被装饰的函数时计时,然后把经过的时间.传入的参数和调用的结果打印出来. 示例 7-15 一个简单的装饰器,输出函数的运行时间 importtimedef ...
- python3装饰器例子_Python装饰器几个有用又好玩的例子
装饰器是一种巧妙简洁的魔术,类似于Java中的面向切面编程,我们可以再函数执行前.执行后.抛出异常时做一些工作.利用装饰器,我们可以抽象出一些共同的逻辑,简化代码.而简化代码的同时,就是在增加代码鲁棒 ...
- python3 装饰器_Python3 装饰器
一 什么是装饰器呢? 装饰器本质上来说就是函数,功能就是为其它函数添加附加功能. 原则: 不修改被修饰函数的源代码 不修改被修饰函数的调用方式 组织结构: 装饰器=高阶函数+函数嵌套+闭包 实例1(P ...
- python装饰器实例-Python装饰器实用例子
Python里我们经常能见到@开头的句法,也就是人们常说的装饰器(decorator).装饰器是Python非常重要的一部分,能够产出更易于维护的代码.这篇文章会给大家带来装饰器的介绍以及几个实用的例 ...
- python装饰器实例-Python装饰器原理与简单用法实例分析
本文实例讲述了Python装饰器原理与简单用法.分享给大家供大家参考,具体如下: 今天整理装饰器,内嵌的装饰器.让装饰器带参数等多种形式,非常复杂,让人头疼不已.但是突然间发现了装饰器的奥秘,原来如此 ...
- python装饰器实例-Python装饰器用法实例总结
本文实例讲述了Python装饰器用法.分享给大家供大家参考,具体如下: 一.装饰器是什么 python的装饰器本质上是一个Python函数,它可以让其他函数在不需要做任何代码变动的前提下增加额外功能, ...
- python 装饰器 参数-python函数装饰器之带参数的函数和带参数的装饰器用法示例...
本文实例讲述了python函数装饰器之带参数的函数和带参数的装饰器用法.分享给大家供大家参考,具体如下: 1. 函数带多个参数 # 普通的装饰器, 打印函数的运行时间 def decrator(fun ...
- python装饰器原理-python装饰器原理和用法总结
原理 装饰器本质也是一个函数, 只不过这个函数需要遵循以下规则: 入参只能有一个,类型为函数. 被装饰的函数将入会被传入这个参数 返回值是必须是一个函数, 届时被调用的时候实际上调用的是返回出来的这个 ...
- python装饰器-Python @函数装饰器及用法(超级详细)
前面章节中,我们已经讲解了 Python 内置的 3 种函数装饰器,分别是 @staticmethod.@classmethod 和 @property,其中 staticmethod().class ...
- python装饰器作用-Python装饰器用法实例总结
一.装饰器是什么 python的装饰器本质上是一个Python函数,它可以让其他函数在不需要做任何代码变动的前提下增加额外功能,装饰器的返回值也是一个函数对象.简单的说装饰器就是一个用来返回函数的函数 ...
最新文章
- OData元数据在浏览器里以Feed视图显示的解决办法
- Android开发之Android studio4.1查看app布局的方法 | 使用布局检查器和布局验证工具调试布局
- 模板:什么是Traits
- eovs实训报告总结心得_实训总结与心得体会3篇_心得体会
- 查询用户分配角色TCODE
- java 常量 内存分配_Java内存分配之堆、栈和常量池
- 计算机辅助外文文献,计算机辅助夹具设计外文文献.pdf
- 服务化改造实践(二)| Dubbo + Kubernetes
- linux部署redis详细步骤
- csgo 机器人模式_分享一个休闲模式机器人Bug
- win8.1重装系统计算机管理打不开,Windows8计算机打不开192.168.0.1怎么办
- python 进度条_6种酷炫Python运行进度条
- oracle 表查询(1)
- Linux系统下卸载VMware Workstation软件
- java毕业设计老师评语_java教学评价管理系统毕业设计答辩PPT.ppt
- 在SpringBoot中实现通用Auth认证,有哪几种方式?
- 计算机芯片级维修包括哪些,计算机芯片级维修中心(芯片级维培训教材)b.doc
- 经典逻辑题:猜牌问题——网上的结论是没问题的
- 人脸识别(一)调用face++实现人脸检测
- mysql5.7对应jdbc驱动版本_mysql5.7.11对应的JDBC驱动是哪个版本