当前位置: 首页 > news >正文

Python之装饰器三 踩坑(带参数,不带参数,两者都带参数)

文章目录

  • 前言
  • 一、装饰器不带参数(但是装修器内部的函数又需要参数)
  • 二、装饰器带参数(但是被装饰的函数不带参数)
  • 三、装饰器带参数(并且被装饰的函数也带参数)
  • 总结


前言

Python装饰器里面遇到的踩坑点,以及自己的理解。


一、装饰器不带参数(但是装修器内部的函数又需要参数)

现在遇见一种情况,装饰器不带参数,但是装饰器内部又需要带参数,那么这种情况怎么办呢?

看下面例子:

猜想1:

在装饰器直接加参数

当然这种方式是不行的。看例子:

报错的的含义,直接在百度一搜就有解释。也就是说,这里要传入的参数是一个函数,但是你传了一个整数。

我们可以从截图里面看到 fun1(fun),这个地方看到,传入的参数是一个函数。

猜想2:

那么从猜想一看到,总的要有个地方传这个num吧,不然就会报错。既然在装饰器的后面不能加括号传参,那么我们只有在被装饰的函数想办法,在被装饰的函数调用的时候,传参。

按理说,一个函数平白无故的传参,会报错,但是在这里为什么没有报错呢?

我自己当时也没有想通,但是后面我慢慢发现的原因:

猜想的原因一:

平时一个正常的函数,莫名其妙的传参会报错

相关文章:

  • SpringBoot线程池的使用
  • QML 实现一个动态的启动界面
  • Apipost和Apifox如何选型(1):WebSocket调试
  • 【Elasticsearch】多索引(数据流)搜索
  • conda 配置源
  • CSDN违禁词与规避(CSDN社区专属)
  • 零基础学QT、C++(四)QT程序打包
  • 利用Linux技能处理访问升级
  • UE_C++ —— Container TSet
  • AIGC视频扩散模型新星:SVD——稳定扩散的Video模型
  • 服务保护和分布式事务
  • buu-get_started_3dsctf_2016-好久不见39
  • WordPress自定义排序插件:Simple Custom Post Order完全指南(SEO优化版)
  • 探讨一下游戏的重要性
  • netcore libreoffice
  • Windows - 通过ssh打开带有图形界面的程序 - 一种通过计划任务的曲折实现方式
  • 2024年数字政府服务能力优秀创新案例汇编(附下载)
  • 【QT中的一些高级数据结构,持续更新中...】
  • 高精度算法解析与实现(c++)
  • QT实战-基于QWidget实现的异形tip窗口
  • 阳朔兴坪镇:在建乾元桥“垮塌”是谣言,系降雨导致工程挡土墙倾斜
  • 特朗普亲家有了新工作:美国驻法大使
  • 国家发改委:安全是低空经济发展的首要前提,稳妥推进低空旅游、航空运动等发展
  • 文化厚度与市场温度兼具,七猫文学为现实题材作品提供土壤
  • 夜驾遇东北虎隔窗对视?延吉林业局:村里有牛被咬死,保险公司会理赔
  • 深一度|上座率连创纪录撬动文旅,中超可否复制大连模式