语法糖
Posted 窃语
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了语法糖相关的知识,希望对你有一定的参考价值。
‘‘‘‘‘示例1: 使用语法糖@来装饰函数,相当于“myfunc = fun1(myfunc)”
但发现新函数只在第一次被调用,且原函数多调用了一次‘‘‘
# def fun1(func):
# print("before")
# func() #第一次调用
# print("after")
# # def func():
# # pass
# return func#第二次调用
# @fun1
# def myfunc():
# print("myfunc() called")
# myfunc()#会调用fun1
# myfunc()#不会调用fun1
# ‘‘‘‘‘示例2: 使用内嵌包装函数来确保每次新函数都被调用,
# 内嵌包装函数的形参和返回值与原函数相同,装饰函数返回内嵌包装函数对象‘‘‘
# def deco(func):
# def _deco():
# print("before ")
# func()
# print(" after")
# # 不需要返回func,实际上应返回原函数的返回值
# return _deco
# @deco
# def myfunc():
# print(" myfunc() called.")
# return ‘ok‘
# myfunc()
# myfunc()
以上是关于语法糖的主要内容,如果未能解决你的问题,请参考以下文章