IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> 初始Flask -> 正文阅读

[Python知识库]初始Flask

1. Flask框架的介绍

1.1为什么要使用Flask

因为Flask是轻量级框架,拥有丰富的拓展,可以给应用增加相应的功能。在web框架中是比较流行的

2. Flask 项目环境的搭建

2.1创建虚拟环境

创建虚拟环境是为了让之后安装Flask及其需要用到的库不跟其他的库混淆。

2.1.1配置虚拟环境

File --> settings --> project 项目名 --> project interpreter
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

当在目录里有venv的文件夹和运行的终端路径前出现(venv)

在这里插入图片描述

2.1.2 如果没有出现venv,那就激活一下

看看venv文件中,是否有一下文件
在这里插入图片描述
没有的话就重建项目按照以上步骤重新进行
有的话,就开始激活
第一步:先进入venv的scripts下

cd venv/scripts

在这里插入图片描述
进入后,输入activate,之后就是下边这样。在这里插入图片描述
然后再退到项目的根目录

cd ../..

在这里插入图片描述
如果还不可以,就输入deactivate退出一下,再重新激活

2.2 安装Flask及相关库

将需要用到的库和版本号全部写入一个文本文档,把这个文本文档拖进PyCharm,在终端执行

pip install -r 文件名

出现successfully就是安装成功
在这里插入图片描述

3.初步演示Flask

# 导包
from flask import Flask
# 实例化Flask对象 __name__  当前包名
app = Flask(__name__)
# 使用装饰器 配置路由
@app.route("/hello")
# 视图函数
def hello():
    return "hello"
# 运行
if __name__ == '__main__':
    app.run()

4. Flask配置

4.1 从配置对象中加载

在项目根目录创建一个settings的文件夹,在文件夹下创建config文件,在文件下写

# 配置类
class DefaultConfig:
    # 属性名字必须全部大写
    NAME = "zhangsan"
    DEBUG = True   # 设置为Ture可以自动加载,自动刷新

在项目根目录下创建hello2.py文件

# 导包
from flask import Flask
# 导入配置类
from settings.config import DefaultConfig
# 实例化Flask对象 __name__  当前包名
app = Flask(__name__)
# 从对象中加载配置文件
app.config.from_object(DefaultConfig)
print(app.config)
# 使用装饰器 配置路由
@app.route("/hello")
# 视图函数
def hello():
    return "hello"
# 运行
if __name__ == '__main__':
    app.run()

4.2 从配置文件中加载

在项目根目录创建一个setting.py的文件,在文件下写

AGE = 18

在hello2.py文件中写

# 导包
from flask import Flask
# 实例化Flask对象 __name__  当前包名
app = Flask(__name__)
# 从文件中加载配置项
app.config.from_pyfile("setting.py")
print(app.config)
# 使用装饰器 配置路由
@app.route("/hello")
# 视图函数
def hello():
    return "hello"
# 运行
if __name__ == '__main__':
    app.run()

4.3 从环境变量中加载配置

在一个文件下创建一个配置文件,把文件路径复制下来
在这里插入图片描述
在pycharm中增加变量路径
在这里插入图片描述
在这里插入图片描述
在hello2.py文件里写

# 导包
from flask import Flask
# 实例化Flask对象 __name__  当前包名
app = Flask(__name__)
# 从环境变量中加载配置文件
app.config.from_envvar("password")
print(app.config)
# 使用装饰器 配置路由
@app.route("/hello")
# 视图函数
def hello():
    return "hello"
# 运行
if __name__ == '__main__':
    app.run()

4.4 三者之间的区别

  1. 从对象加载配置: 配置方式灵活, 可复用性强, 但不安全,没有敏感信息时使用
  2. 从文件加载配置: 复用性不好, 也不安全, 但是官方推荐用法
  3. 从环境变量加载: 相对安全, 利于配置敏感信息, 推荐使用

5.工厂模式

工厂模式:提供一个“工程”,让其创建一个对象,客户端用某些参数进行调用,之后返回结果。
工厂模式简单实例:

# 写一个接口类
class Animal():
    def do_say(self):
        pass
class Cat(Animal):
    def do_say(self):
        print("miao,miao")

class Dog(Animal):
    def do_say(self):
        print("wang,wang")

class Forest():
    def say(self,animal_type):
        eval(animal_type)().do_say()

if __name__ == '__main__':
    a = input("请输入动物的类型(Cat or Dog):")
    print("接受到的数据为:",a)
    Forest().say(a)

6.APP封装

将执行的语句和需要创建的语句分离开,在执行的文件里进行导入,调用
示例:
在根目录下创建一个create_app.py文件,在文件里写创建的语句

from flask import Flask
#创建flask对象
def create_app():
   flask_app = Flask(__name__)
   print("我被调用了")
   return flask_app

在app.py文件里写要执行的语句

#导入
from create_app import create_app
#实例化
app = create_app()
print(app)
if __name__ == '__main__':
   app.run()

7.Flask路由

使用装饰器来配置路由,参数分别是
url 路径
method 访问方法
endpoint 路由别名

from create_app import create_app
from flask import url_for
app = create_app()
print(app)

# endpoint 路由别名  可以不指定
@app.route("/hello",methods=["get","post"],endpoint="aaa")
def hello():
    return "hello"

@app.route("/path")
def get_path():
    u = url_for("aaa")
    print(u)
    return u

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

8. 启动Flask 项目

第一种:在项目下直接调用app.run()

if __name__ == "__main__":
	app.run()

第二种:在项目终端输入flask run 项目名
第三种:创建Flaskapp运行对象
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
出现http://127.0.0.1:5000的字样就是成功

总结

1.Flask环境如何搭建

需要创建一个虚拟环境,在虚拟环境里安装Flask依赖

2. Flask有几种配置方式?区别是什么?

三种。分别是:从对象加载配置,从文件加载配置,从环境变量记载

  1. 从对象加载配置: 配置方式灵活, 可复用性强, 但不安全,没有敏感信息时使用
  2. 从文件加载配置: 复用性不好, 也不安全, 但是官方推荐用法
  3. 从环境变量加载: 相对安全, 利于配置敏感信息, 推荐使用

3.什么是设计模式?工厂模式是什么?

设计模式是一种思想,是解决特定问题的解决方案。
工程模式就是给创建类型对象和客户端调用方法提供一个工厂

4.如何封装APP?意义是什么?

在一个文件里定义一个函数,将APP封装到函数里。
调用方便,可简化代码

5. Flask路由定义的语法是什么?参数的含义都是 什么?

@app.route(url=“路径”,methods=[“请求方式”],enpoint=“路由别名”)

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2022-07-20 18:47:30  更:2022-07-20 18:47:53 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/27 3:08:59-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码
数据统计