Python Flask框架快速入门
Python Flask框架是一个开发Web应用的微型框架。它非常易于学习和使用,并且可以通过丰富的插件来加强功能。本攻略将介绍如何快速入门Python Flask框架。
步骤1:安装Flask
要开始使用Flask框架,必须先安装它。可以使用以下命令在命令行中安装:
pip install Flask
步骤2:编写第一个Flask应用程序
在安装Flask之后,现在可以开始编写第一个Flask Web应用程序。下面是一个简单的Flask应用程序:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello World'
if __name__ == '__main__':
app.run()
将以上代码保存为文件 app.py
。在命令行中导航到该文件所在的目录,并使用以下命令启动Flask应用程序:
python app.py
现在在浏览器中访问 http://localhost:5000/
就可以看到文本 “Hello World”。
步骤3:通过路由添加页面
接下来,可以使用路由添加其他页面,例如 “about” 页面:
@app.route('/about')
def about():
return 'The about page'
现在在浏览器中访问 http://localhost:5000/about
就可以看到文本 “The about page”。
示例1:使用HTML返回渲染页面
使用Flask框架可以方便地生成基于HTML的页面。下面是一个使用HTML返回渲染页面的示例:
from flask import Flask, render_template
app = Flask(__name__)
@app.route('/')
def home():
return render_template('home.html')
if __name__ == '__main__':
app.run()
在将以上代码保存为文件 app.py
后,在与 app.py
相同的目录下创建一个名为 templates
的文件夹,并在其中创建一个名为 home.html
的HTML文件。在 home.html
文件中添加以下文本:
<!DOCTYPE html>
<html>
<body>
<h1>Welcome to my website</h1>
</body>
</html>
现在在浏览器中访问 http://localhost:5000/
就可以看到文本 “Welcome to my website”。
示例2:使用表单传递数据
使用Flask框架的Form类可以方便地处理HTML表单并从中提取数据。下面是一个使用表单传递数据的示例:
from flask import Flask, render_template, request
app = Flask(__name__)
@app.route('/')
def index():
return render_template('form.html')
@app.route('/process_form', methods=['POST'])
def process_form():
name = request.form['name']
email = request.form['email']
return f'Hello {name}, your email is {email}.'
if __name__ == '__main__':
app.run()
在将以上代码保存为文件 app.py
后,在与 app.py
相同的目录下创建一个名为 templates
的文件夹,并在其中创建一个名为 form.html
的HTML文件。在 form.html
文件中添加以下文本:
<!DOCTYPE html>
<html>
<body>
<form action="/process_form" method="POST">
<label for="name">Name:</label><br>
<input type="text" id="name" name="name"><br>
<label for="email">Email:</label><br>
<input type="email" id="email" name="email"><br><br>
<input type="submit" value="Submit">
</form>
</body>
</html>
现在在浏览器中访问 http://localhost:5000/
就可以看到一个表单。在表单中填写并提交后,将看到文本 “Hello [name], your email is [email].” ([name]和[email]将替换为您在表单中输入的值)。