运行 Flask 应用程序
通过这个解释,我们将学习如何在 Visual Studio Code 中设置 Flask 环境并创建 Flask 的基本应用程序。
创建一个基本的 Flask 应用程序
Flask 是 Python 的一个微型 Web 框架,也是著名的构建 Web 应用程序的框架。它还以创建 REST API 而闻名。
让我们开始工作吧;在开始之前,你必须确保你的机器上安装了 Python。如果需要安装,可以到 Python 官网下载最新版本,然后选择你的操作系统进行安装。
执行安装后,你必须检查是否已成功将 Python 安装到你的机器上。你可以转到命令提示符并键入以下命令。
python --version
如果你的 Python 版本正在显示,那么我们将使用 Python 库。我们使用 Visual Studio Code 是因为这是一个轻量级的编辑器,但你可以使用任何编辑器编写代码。
创建新文件夹后,我们将在该目录中打开 VS Code 环境。那么,创建虚拟环境,我们为什么需要创建虚拟环境呢?
虚拟环境就像你机器上的一个隔离环境;如果你在使用不同版本的库和依赖项的虚拟环境中使用 Python 脚本,则所有这些都存储在你机器上的一个容器化隔离环境中。
它不会干扰其他项目和系统设置,这就是为什么它在处理严肃项目时很有用。现在我们将继续设置我们的虚拟环境;我们需要按 Ctrl+` 来启动终端。
完成后,我们可以键入以下命令来安装虚拟环境模块。
pip install virtualenv
安装成功后,我们需要创建一个虚拟环境并使用 virtualenv env
,env
是我们虚拟环境的名称。当我们创建一个虚拟环境时,我们需要给它命名。
接下来,我们需要激活环境或者进入环境;现在,我们将编写以下命令。
\env\Scripts\activate.bat
我们已经进入了我们的虚拟环境;如果你使用的是 Mac OS,请使用以下命令激活你的虚拟环境。
source env\bin\activate
现在我们可以继续使用以下命令安装 Flask。
pip install flask
成功安装 Flask 后,我们在这个与我们的机器分开的虚拟环境中进行了所有安装。我们需要创建我们的主应用程序;我们将其称为 app.py
文件。
我们将编写最基本的 Flask 应用程序来演示如何快速获取 Flask 应用程序并使其能够运行网页。
首先需要导入 Flask,所以第一个 Flask 是小写的,就是库,第二个是大写的,就是 Flask 的类。现在我们需要实例化这个 Flask
类和 app
等于 Flask(__name__)
引用当前应用程序的名称。
现在我们需要创建一个叫做路由的东西,它只是我们应用程序中特定网页的 URL 端点。我们将在这条路线@app.route('/')
中添加一个斜线,但你可以在此处添加任何你想要的内容。它可以是页面名称或端点名称。
然后定义一个函数,名称可以是任何你想要的,但你命名它是描述性的。在这种情况下,这是 index()
,表示我们网站的基本 URL;然后,我们将编写一个返回字符串的 return
语句。
最后一件事是通过 Python 解释器运行应用程序; __name__=='__main__'
变量设置为 Python 文件的实际名称。这里的 if
语句确保服务器仅在脚本直接从 Python 解释器执行时运行。
我们跳到代码的最后一行;我们使用 run()
函数在我们的应用程序中运行本地服务器。
在我们的例子中,我们只是将 debug
设置为 True
,所以这是一种了解错误的方法,但请记住,当你将 Flask 应用程序启动到生产环境中时,你总是必须设置 debug
到 False
。
from flask import Flask
app=Flask(__name__)
@app.route('/')
def index():
return "Hi there, this is our basic flask app"
if __name__=='__main__':
app.run(debug=True)
现在我们可以继续通过键入如下所示的命令来启动我们的应用程序。当我们点击 Enter 并获得一个 localhost 地址时,我们需要将其复制并粘贴到我们放置 URL 的浏览器中。
输出:
Hello! I am Salman Bin Mehmood(Baum), a software developer and I help organizations, address complex problems. My expertise lies within back-end, data science and machine learning. I am a lifelong learner, currently working on metaverse, and enrolled in a course building an AI application with python. I love solving problems and developing bug-free software for people. I write content related to python and hot Technologies.
LinkedIn