Python中的Flask入门基础(一)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/sunshunli/article/details/83246081
#1.导入Flask扩展.
from flask import Flask#导入我们的Flask框架
from flask import render_template#我们的返回值有两种,如果要返回html,就需要导入这个模块
#2.创建Flask应用程序实例,需要传入_name_,作用是为了确定资源所在的路径
app = Flask(__name__)

#3.确定路由及其视图函数,@app为装饰器
#Flask中定义路由是通过装饰器实现的,装饰器下面紧跟着我们定义的函数
#路由默认值只支持GET,如果想要其他的方法,那么就添加method方法
@app.route('/',methods=['GET','POST'])
#这种是返回的字符串内容
def hello_world():
    return 'Hello World!'
#这是返回HTML内容
@app.route('/login.html')
def login():
    url_str='www.baidu.com'
    my_list=['ssl','hxf']
    mydata_list=[1,2,3,4,5]
    my_dict={'name':'ssl',
             'lover':'hxf'}
    #通常,我们模板中(模板就是我们的html文件)使用的变量名和要传递的数据名是一样的
    return render_template('login.html',url_str=url_str,my_list=my_list,my_dict=my_dict,mydata_list=mydata_list
                           )
#下面来实现使用一个视图函数u,来实现不同的订单信息,order_id默认的是字符串,如果想要特性的格式,那么
#可以在前面加上类型
@app.route('/order/<int:order_id>')
def get_order_id(order_id):
    return 'order_id is %s' %order_id
#4.启动程序
if __name__ == '__main__':
    #执行app.run就会将我们的Flask程序运行在一个简单的服务器上(服务器有Flask提供,用于测试)
    app.run()
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
{#在html文档中想要使用注释的方法是Ctrl+/即可# }

<p>阿芬儿,嘤嘤嘤</p><br>
{#下面就是我们的变量代码块的使用,格式就是{{ }}},双层的大括号,中间写我们的变量名#}
<p>{{ url_str}}</p><br>
<p>{{ my_list}}}</p>
<p>{{ my_list[1]}}}</p>
<p>{{ mydata_list}}}</p>
<p>{{ my_dict}}}</p>
<p>{{ my_dict[url]}}}</p>
{#用{%%}定义的控制代码块,可以实现一些语言层次的功能#}
<br>
{#for循环,快捷方式,先写for然后tab补全#}
{% for num in mydata_list %}
    {% if num > 3 %}
        {{ num}}<br>
    {% endif %}
{% endfor %}


</body>
</html>

上面是我实现的一些进本的功能与介绍,适合刚接触Flask的人。

Flask需要一些html,css,javascript和python的基本知识

Flask的运行过程
1.当客户端想要获取资源时,一般会通过浏览器发送HTTP请求
2.此时Web服务器会把来自客户端的所有请求都交给Flask程序实例
3.程序实例是使用Werkzeug来做路由分发(URL请求和函数之间的对应关系)
4.根据每个URL的请求,找到具体的视图函数进行调用
  4.1在Flask程序中,路由的实现一般是通过程序实例的装饰器来实现
5.Flask调用视图函数后,就可以返回两种内容:
  1.字符串内容。将视图的返回值作为相应的内容
  2.html模板内容,获取到数据后,把数据传入HTML模板文件中,模板引擎负责渲染数据,然后响应数据给客户端(浏览器)

.

猜你喜欢

转载自blog.csdn.net/sunshunli/article/details/83246081