Flask:app到底是什么

2024-05-17 07:00:49 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在学习this烧瓶教程。我们声明像@app.route('/')这样的路由,但是python中的任何变量都不能包含@字符。
我很困惑什么是@app以及它是从哪里来的。下面是代码片段:

from app import app

@app.route('/')
@app.route('/index')
def index():
    return "Hello, World!"

Tags: 代码fromimportapp声明路由helloindex
2条回答

@告诉Python用app.route()中定义的decorator装饰函数index()

基本上,decorator是一个修改另一个函数行为的函数。作为一个玩具的例子,考虑一下这个。

def square(func):
    def inner(x):
        return func(x) ** 2
    return inner

@square
def dbl(x):
    return x * 2 

现在-调用dbl(10)将不会返回20,正如您所料,而是返回40020**2)。

This是一个很好的步骤。装饰师讲解。

它是一个decorator。当用@app.route('/')(这是一个函数)修饰时,调用index()与调用app.route('/')(index)()相同。

这里有another link可以在python wiki中解释它。

相关问题 更多 >