Python 3 中的 '@' 在函数前指示了什么含义?

13 浏览
0 Comments

Python 3 中的 '@' 在函数前指示了什么含义?

这个问题已经有了答案

在Python中,\"at\"(@)符号的作用是什么?

我查找了当@出现在Python函数之前时的含义,但没有找到有用的信息。

例如,在Django中我看到了这段代码:

@login_required

...而在goto-statement软件包中我又看到了这个:

@with_goto

这是什么意思?

admin 更改状态以发布 2023年5月20日
0
0 Comments

它代表了装饰器。装饰器是一个函数,它接受另一个函数,并扩展后者的行为而不显式地修改它。

def decorator_function(func):
    def inner_function():
        print("Before the function is called.")
        func()
        print("After the function is called.")
    return inner_function
@decorator_function
def args_funtion():
    print("In the middle we are!")

实际上,这个@decorator_function装饰器执行的工作与

args_funtion = decorator_function(args_funtion)
args_funtion()

0