首页 > 编程语言 >python装饰器 - 修改函数返回值

python装饰器 - 修改函数返回值

时间:2022-11-24 15:44:27浏览次数:36  
标签:deco return python ret Functionreturn value print 返回值 装饰

def f(n):
    n+=1
    print("hello :{}".format(n))
    return n+1

ret = f(9)
print("Functionreturn value :",ret)

在没有装饰器的情况下,运行结果如下

hello :10
Functionreturn value : 11

现在我们给它加上装饰器修改他的返回值

def deco(fun):
    def f(n):
        print("deco start ")
        ret=fun(n)
        print("deco end:{} ".format(ret))
        return ret+10000
    return f

@deco
def f(n):
    n+=1
    print("hello :{}".format(n))
    return n+1

ret = f(9)
print("Functionreturn value :",ret)

运行结果如下

deco start 
hello :10
deco end:11 
Functionreturn value : 10011

函数返回值成功被修改

标签:deco,return,python,ret,Functionreturn,value,print,返回值,装饰
From: https://www.cnblogs.com/pfeiliu/p/16922061.html

相关文章

  • 【python自动化】02. pywin32库自动操作键鼠(保姆级代码注释)
     目录源码和工具下载大漠综合工具->坐标和窗口信息抓取在你的桌面上新建一个记事本用于后面的代码测试完整项目源码实现思路介绍win32的基础思路基本步......
  • Python第十周
    一.   实验目的和要求二.  实验环境 python3.1064-bit三.  实验过程实例1代码如下:1deffun_bmi(person,height,weight):2'''功能:根据身高和体......
  • 【Python字符串方法】字符串类型判断、大小写转化、拆分和组合、填充和对齐
    去空白字符str.strip():去掉字符串左右两边的空格str.lstrip():去掉字符串左边的空格str.rstrip():去掉字符串右边的空格以上函数返回从处理后的字符串,并不在原对象上......
  • python - metaclass
     metaclass的作用-在python的世界,一起都是object.类也是object。上面这张图很好的描述了class类的创建过程。通过下面的例子来了解类的创建过程,实例对象的创......
  • Python第九周
    一.   实验目的和要求了解Pyhon中常见的异常二.  实验环境 python3.1064-bit三.  实验过程实例1代码如下:1print("\n",'='*10,"蚂蚁庄园动态","="*10)2......
  • python第一章三引号的用法
    #用2种方式拼接信息,第一种为常用方式name=input("name:")age=input("age:")job=input("job:")salary=input("salary:")info1='''--------------------info1of{_......
  • python进阶(29)单例模式
    初识单例模式 单例模式含义单例模式,也叫单子模式,是一种常用的软件设计模式。在应用这个模式时,单例对象的类必须保证只有一个实例存在。许多时候整个系统只需要拥有一个......
  • 【python算法】24点
    defsolution(numbers):res=set()defpoint24(numbers):iflen(numbers)==1:ifabs(eval(numbers[0])-24)<1e-10:......
  • Java 设计模式:装饰器模式
    目录装饰器模式(DecoratorPattern)概述实现业界实践装饰器模式(DecoratorPattern)概述所属:结构型模式,作为现有的类的一个包装。适用时机:扩展某个类的时候。不使用子类继......
  • Python Charles抓包配置实现流程图解
    配置大佬的博客真的很详细很详细,我就不重复造轮子了,看这里补充解释在这一步疑问很多,大佬说的不是很详细,就由我来补充下吧~在PC端Charles这样点击:之后会这样提示:我们......