热线电话:13121318867

登录
2019-07-01 阅读量: 736
如何理解add.data

'add()'返回作为参数传递的x和y的总和但是它被装饰器函数包装,调用add(2,3)只会给出两个数字的总和,但是当我们调用add.data时,'add'函数是传递给装饰器函数'attach_data'作为参数,此函数返回'add'函数,其属性'data'设置为3,因此将其打印出来。

# A Python example to demonstrate that

# decorators can be useful attach data

# A decorator function to attach

# data to func

def attach_data(func):

func.data = 3

return func

@attach_data

def add (x, y):

return x + y

# Driver code

# This call is equivalent to attach_data()

# with add() as parameter

print(add(2, 3))

print(add.data)

0.0000
3
关注作者
收藏
评论(0)

发表评论

暂无数据
推荐帖子