参考文献:python上手—flask框架web开发实践-数据库_python flask web开发-CSDN博客

本教程采用跟步式进行记录,把大佬的走一遍,转化为自己的输出

1.在index首页打印welcom

1
2
3
4
5
6
7
8
9
10
11
12
13
14
from flask import  Flask    #导入Flask类
app=Flask(__name__)


@app.route('/')
def index():
return '<h3>welcome to my webpage!</h3><hr><p style="color:red">输出语句测试</p>'

# @app.route('/') #调用route路由方法,括号里给定参数,/符号默认为首页
# @app.route('/home/user')

#实例化并命名为app实例
if __name__=="__main__":
app.run(port=2020,host="127.0.0.1",debug=True) #调用run方法,设定端口号,启动服务

但是这种缺点很明显,就是要在return中写大量的html语句

解决方法就是flask库里的Jinja2模板引擎,调用flask模块里的render_template方法,来调用已经写好的html文件。

1
2
3
4
5
from flask import Flask, render_template

@app.route('/')
def index():
return render_template("index.html") #调用render_template函数,传入html文件参数

但是目前python是找不到index文件的

flask框架在使用这个模板函数时,默认去寻找项目文件夹下的templates文件夹里的html文件。因此我们需要先新建一个templates文件夹,然后在里面新建一个html文件,项目结构及内容参考如下:

此时也要注意main.py的路径,是该文件夹下的根目录,我最初就是因为main.py不在根目录导致一直找不到index.html

1
2
3
4
5
6
7
8
9
10
11
12
from flask import Flask, render_template  # 导入Flask类
app=Flask(__name__)


@app.route('/')
def index():
# return "<h3>welcome to my webpage!</h3><hr><p style=\"color:red\">输出语句测试</p>"
return render_template("index.html") # 调用render_template函数,传入html文件参数

#实例化并命名为app实例
if __name__=="__main__":
app.run(port=2020,host="127.0.0.1",debug=True) #调用run方法,设定端口号,启动服务

以上是能实现通过127.0.0.1直接启动前端页面的main.py的代码