装饰器:

1.装饰器会在函数运行到@装饰器时直接开始装饰,而不是调用函数后装饰

2.装饰器可以在不改变原代码的情况下对函数进行功能的增加

# 装饰器1
def func(func):def call_func(*args, **kwargs):# 被装饰的函数func(*args, **kwargs)print('维持生命还需要娱乐活动!')print('维持生命还需要锻炼身体!')return call_func# 装饰器2
def func1(func):def call_func(*args, **kwargs):# 被装饰的函数func(*args, **kwargs)print('玩了最终幻想!')print('玩了火焰纹章!')return call_func# 给函数加上装饰器1
@func
def live():print('维持生命需要喝水!')print('维持生命需要吃饭!')# 给函数加上装饰器2
@func1
def play():print('玩了穿越火线!')print('玩了英雄联盟!')def main():print('创建了一个角色!')live()play()if __name__ == '__main__':main()

运行结果

Python装饰器简单练习01相关推荐

  1. python装饰器实例-Python装饰器简单用法实例小结

    本文总结分析了Python装饰器简单用法.分享给大家供大家参考,具体如下: 装饰器在python中扮演着很重要的作用,例如插入日志等,装饰器可以为添加额外的功能同时又不影响业务函数的功能. 比如,运行 ...

  2. python装饰器简单理解_python装饰器的简单理解

    如果你接触 Python 有一段时间了的话,想必你对 @ 符号一定不陌生了,没错 @ 符号就是装饰器的语法糖. 装饰器的使用方法很固定: 先定义一个装饰函数(帽子)(也可以用类.偏函数实现) 再定义你 ...

  3. python 装饰器简单笔记(附 *args **kw)

    1. 装饰器 由于函数也是一个对象,而且函数对象可以被赋值给变量,所以,通过变量也能调用该函数. 现在,假设我们要增强函数的功能,比如,在函数调用前后自动打印日志,但又不希望修改函数的定义,这种在代码 ...

  4. python装饰器实例-Python 装饰器简单示例

    简单装饰器示例:def servlet(func): print("into servlet")#1 print(servlet)#2 def foo(): print(" ...

  5. python装饰器简单理解的小demo

    def multi_100(func):def demo(ls):# 这个函数是让列表前两个元素*100for i in range(2):ls[i] = (ls[i] * 100)func(ls)r ...

  6. python装饰器简单理解

    装饰器定义:1.把一个函数名当作实参传给另外一个函数(在不修改装饰函数源代码的情况下为其添加功能) 2.返回值中包含函数名(不改变函数调用方式) 源代码: 1 def f(): 2 def f(): ...

  7. python装饰器使用教学,Python教程|简单上手Python中装饰器的使用

    如何打造极简主义风格网站教程 .极简主义与其他设计风格<极简主义设计之美> 这篇文章的一部分是讲极简主义是如何与其他设计风格很好配合的.可以把极简主义当作一种属性,而它可以添加或结合其他. ...

  8. python装饰器类-PYTHON里的装饰器能装饰类吗

    扩展回答 如何理解python里的装饰器 通常可以理解它是一个hook 的回调函数. 或者是理解成python 留给二次开发的一个内置API. 一般是用回调和hook 方式实现的. 如何理解Pytho ...

  9. python装饰器函数后执行_Python装饰器限制函数运行时间超时则退出执行

    实际项目中会涉及到需要对有些函数的响应时间做一些限制,如果超时就退出函数的执行,停止等待. 可以利用python中的装饰器实现对函数执行时间的控制. python装饰器简单来说可以在不改变某个函数内部 ...

最新文章

  1. css选择器匹配没有属性x的元素[重复]
  2. 【Python基础】玩一玩python第三方进度条库tqdm
  3. different color in Chrome Development Tool
  4. pl/sql developer 自带汉化选项
  5. hive mysql互导_利用Sqoop实现Hive的数据与MySQL数据的互导
  6. 在系统可编程器件一般使用计算机,eda技术与vhdl复习练习题.docx
  7. vue点击按钮打开下拉菜单_vue 点击弹出下拉菜单 点击其他页面收回菜单
  8. BIOS和DOS的区别
  9. JavaScript用法------判断二维数组
  10. 个人如何申请支付宝支付接口(免签约支付)
  11. python代码收费_莱斯大学学费 - 高速公路收费的python设计代码
  12. 澳大利亚麦考瑞大学计算机系杨坚教授团队招收2022-2023年博士研究生
  13. android拒绝服务攻击,Android移动设备上的DDOS攻击
  14. EDK2-UEFI开发
  15. 微信支付 SDK 惊现重大漏洞:黑客可 0 元购买任意商品
  16. 2021-08-11 TM32F103 Buffer FatFs 文件系统移植
  17. e1000网卡驱动第二天_3
  18. linux 没有可用软件包,Linux中“没有可用的软件包XX,但是它被其他软件包引用”的解决方法...
  19. Android 中文API合集 最终版,androi中文api合集.doc
  20. 2021年西雅图第一家通过传统IPO上市的公司

热门文章

  1. html5 canvas 自动改变宽高,H5 canvas中width、height和style的宽高区别详解
  2. java计算机毕业设计高校多媒体设备运维管理系统服务端MyBatis+系统+LW文档+源码+调试部署
  3. AI - 主流深度学习框架简介
  4. 苹果键盘对应PC键盘-苹果键 option command control
  5. 数据库关联映射建表图示(一对多、多对多)
  6. 构建springclound项目(详情)
  7. VLAN间路由-单臂路由
  8. 电脑无法上网解决办法
  9. substring 函数
  10. substring()用法