Python day27

@浙大疏锦行 Python day27

内容:

  • Python中的装饰器:封装的思想,使用@注解将函数封装起来从而实现在函数运行前后完成目标操作,即将被封装函数的行为视为整体运行过程中的一部分
  • 无返回值:函数无返回值,只需要完成封装逻辑即可。
  • 有返回值:函数有返回值,函数有返回值时,需要在装饰器函数位置接受返回值并返回给用户。
python 复制代码
import time

def display_time(func):
    """支持任意参数的时间统计装饰器"""
    def wrapper(*args, **kwargs):  # 接收任意数量的位置参数和关键字参数
        t1 = time.time()
        result = func(*args, **kwargs)  # 将参数传递给原函数,注意之前的无参数写法和现在不同
        t2 = time.time()
        print(f"函数执行时间: {t2 - t1} 秒")
        return result  # 返回原函数的返回值
    return wrapper

@display_time
def add(a, b):
    return a + b

add(3, 5)  # 正常接收参数并计算
相关推荐
jerryinwuhan1 分钟前
python快速入门第二周
python
IT毕设梦工厂12 分钟前
计算机毕业设计选题推荐:基于大数据的供应链数据分析与可视化|毕业设计选题|计算机毕设|选题推荐|毕设指导|项目定制|源码|高质量项目
大数据·hive·hadoop·python·数据分析·spark·课程设计
用户2986985301415 分钟前
Python 文档格式转换:Word 转 EPUB 实践
后端·python·api
IT毕设梦工厂1 小时前
计算机毕业设计选题推荐:基于大数据的二手车数据可视化分析|毕业设计选题|计算机毕设|选题推荐|毕设指导|项目定制|源码|高质量项目
大数据·hadoop·python·数据挖掘·数据分析·课程设计·数据分析数据可视化
Python图像识别1 小时前
17-【2027毕设】YOLO11水稻病害检测识别系统 - Python完整源码+PyQt5界面+训练模型+数据集
python·深度学习·yolo·毕业设计·毕设
天天被压力1 小时前
【别再到处找免费股票数据API了:官方204个接口,32篇一次讲透 #02】涨停跌停与特色股池:5类股池接口一次拉全
java·人工智能·python
Wx-bishekaifayuan1 小时前
springboot甘肃特产服务平台50301-计算机课程设计、毕业设计
spring boot·后端·python·django·课程设计·express·旅游
midelshuang1 小时前
RAG 文档解析(三):bbox 实战——多栏排版与水印 PDF
python
FYKJ_20102 小时前
springboot雅集社区养老管理系统04456-计算机课程设计、毕业设计
vue.js·spring boot·python·mysql·typescript·spark·django
zhanghaha13142 小时前
Python进阶教程:35_PyQt (保姆级零基础教程)
开发语言·python·pyqt