跳转到内容

使用 Flask 创建网站/入门

100% developed
来自维基教科书,开放世界中的开放书籍

Flask 是一个 Python 库,所以您首先需要安装 Python。然后,您可以使用 pip 包管理器安装 Flask

pip install flask

为了确保您已正确安装 Flask,请运行以下 Python 脚本

import flask

如果它没有错误地运行,那么您已经成功安装 Flask!

Hello World!

[编辑 | 编辑源代码]

在编程中,制作一个显示“Hello World!”的程序是一种传统。所以,我们将创建一个当我们访问它时返回“Hello World!”的网站。

在您的代码编辑器中,编写以下代码

from flask import Flask

app = Flask(__name__)

@app.route("/")
def hello_world():
    return "Hello World!"

if __name__ == "__main__":
    app.run(port=7070)

现在,保存 Python 代码并像运行任何其他 Python 程序一样运行它。然后,当您访问 localhost:7070 时,您应该看到“Hello World!”。

代码分解

[编辑 | 编辑源代码]

现在,让我们逐行分解我们刚刚编写的代码。

首先,我们需要从 Flask 模块导入我们需要的东西(第 1 行)

from flask import Flask

然后,我们需要创建一个 Flask 对象的实例,它代表我们的 Web 应用程序(第 3 行)

app = Flask(__name__)

然后,我们创建一个装饰器。装饰器是修改下一个函数的函数。在本例中,当用户访问根页面时,装饰器向用户显示下一个函数返回的内容(第 5 行)

@app.route("/")

然后,我们实际上创建了将被装饰器修改的函数,并使其返回“Hello World!”(第 5 和 6 行)

def hello_world():
    return "Hello World!"

我们也可以使函数返回一些 HTML

def hello_world():
    return "<h1>Hello World!</h1>"

然后,我们在端口 7070 上运行 Flask 对象(第 9 和 10 行)

if __name__ == "__main__":
    app.run(port=7070)

添加更多路由

[编辑 | 编辑源代码]

当然,没有什么能阻止我们拥有更多路由。例如,让我们添加以下代码

@app.route("/about")
def about():
    return "<h1>This is my first Flask website!</h1>"

为了完整起见,以下是包含新代码块的完整代码

from flask import Flask

app = Flask(__name__)

@app.route("/")
def hello_world():
    return "Hello World!"

@app.route("/about")
def about():
    return "<h1>This is my first Flask website!</h1>"

if __name__ == "__main__":
    app.run(port=7070)

现在,每当我们访问 localhost:7070/about 时,我们都会看到“这是我的第一个 Flask 网站”作为标题(请注意,我们在函数的输出中添加了 HTML 标签)。

华夏公益教科书