简介

本篇文章是使用Python做web应用的开始,将从最简单的显示html页面开始

这里使用的是Flask框架

创建项目目录以及安装Flask

在进行这一步的前提是你已经安装好Python了

创建目录

首先是创建项目目录,项目目录名称没有指定,这个根据实际情况而定,例如我创建的项目目录就是Example

目录结构如下:

Example\
   |----templates

这并不是一个完整的项目目录,只是我们这篇文章用到的目录结构,为了避免混淆,所以其他目录不创建

1.png

上述目录结构中,Example是这个项目的总目录,下面的templates是存放html模板的目录

安装Flask

使用pip命令安装Flask

pip install flask

2.png

创建index页面

使用你熟悉的编辑器创建index页面,这个页面需要创建在templates目录下面

3.png

创建Py文件

在templates目录同级目录下也就是Example目录下创建一个app.py文件,当然,这个文件名并不是固定的,可以自定义

4.png

编辑Flask应用代码

下面是一个简单的完整的Flask应用代码

from flask import Flask,render_template

app = Flask(__name__)

@app.route('/')
def home():
    # 渲染template目录下的index.html
    return render_template('index.html')

if __name__ == '__main__':
    app.run(debug=True)

from flask import Flask,render_template的作用是从Flask库中导入Flask这个类和render_template这个函数

Flask这个类是用来创建web应用实例

render_template这个函数用来读取并返回html文件

app = Flask(__name__)的作用是创建Flask应用实例

__name__是一个Python内置变量,代表当前模块的名字,如果直接允许这个文件,__name__的值是__main__

Flask需要使用__name__这个参数来定位静态文件(CSS/JS)和模板文件(HTML)所在的文件夹。传入__name__之后,Flask会自动以当前文件所在目录为根目录,去寻找`templates和其他文件夹。

@app.route('/')是一个装饰器,也可以理解为路由,它控制了用户访问那个路径的时候执行那一段代码,例如这里,当用户访问根路径也就是是127.0.0.1:5000/的时候,执行的就是下面的home函数

def home():的作用是定义一个名称为home的函数,这个函数在@app.route('/')下面,当用户访问根路径的时候就会执行这个函数

return render_template('index.html')使用return调用render_template这个函数,参数是index.html,也就是说当home这个函数被调用的时候,执行返回index.html这个页面

if __name__ == '__main__':是判断当前模块是被Python执行还是被导入其他模块中

如果是直接运行python app.py,那么__name__的值等于__main__,当条件成立执行if下面的代码

app.run(debug=True)的作用是启动Flask内置的开发服务器,debug=True是开启调试模式,开启调试模式的好处是当你修改代码的时候,服务器会自动重启,不需要手动重启,但是这个模式在生成环境下是绝对不能使用的,会有安全风险。

5.png

启动/访问实例

启动实例

打开cmd命令行,切换到项目目录下,输入下面命令启动实例

python app.py

6.png

访问实例

在浏览器中输入127.0.0.1:5000即可访问

7.png

二维码

发表评论