代码点读机 / Python / @

@ Python · 符号

装饰器语法,给函数或方法“加外挂”,不修改原函数就能增加功能。

怎么用

@装饰器
def 函数():

小例子

def 日志(fn):
    def 包装(*a, **k):
        print('调用前')
        return fn(*a, **k)
    return 包装
@日志
def 问好():
    print('你好')
问好()

运行结果

调用前
你好

提醒:常见如 @staticmethod、@property。

官方文档:https://docs.python.org/zh-cn/3/glossary.html#term-decorator

在代码里遇到不认识的词?打开代码点读机,点一下就懂 → ← Python全部词条