Python的装饰器功能实例

内容摘要
这篇文章主要为大家详细介绍了Python的装饰器功能实例,具有一定的参考价值,可以用来参考一下。

对此感兴趣的朋友,看看idc笔记做的技术笔记。Python中的装饰器本质上是一个高
文章正文

这篇文章主要为大家详细介绍了Python的装饰器功能实例,具有一定的参考价值,可以用来参考一下。

对此感兴趣的朋友,看看idc笔记做的技术笔记。Python中的装饰器本质上是一个高阶函数,它接收一个函数,并且对这个函数进行包装,从而改变原函数的默认行为。

# 来自www.idcnote.com
@deco1(deco_arg)
@deco2
def func(): pass
相当于

# 来自www.idcnote.com
func = deco1(deco_arg)(deco2(func))
Demo如下:

# 来自www.idcnote.com
# -*-coding:utf-8 -*-
def decorator(str):
  print str
  def retfn(fn):
    def retfn(*arg):
      print '已装饰' # 装饰
      return fn(*arg) # 调用原始函数
    return retfn
  return retfn
 
@decorator("实例化装饰器")
def test(str0, str1):
  print str0, str1
 
test('Hello', 'world');

注:关于Python的装饰器功能实例的内容就先介绍到这里,更多相关文章的可以留意

代码注释

作者:喵哥笔记

IDC笔记

学的不仅是技术,更是梦想!