Skip to content

Latest commit

 

History

History
362 lines (234 loc) · 6.27 KB

File metadata and controls

362 lines (234 loc) · 6.27 KB
Error in user YAML: (<unknown>): found a tab character that violate indentation while scanning a plain scalar at line 3 column 3
---
- oeasy Python 0566
- 这是 oeasy 系统化 Python 教程,从基础一步步讲,扎实、完整、不跳步。愿意花时间学,就能真正学会。
- 本教程同步发布在: 
	- 个人网站: `https://oeasy.org` 
	- 蓝桥云课: `https://www.lanqiao.cn/courses/3584` 
	- GitHub: `https://github.com/overmind1980/oeasy-python-tutorial` 
	- Gitee: `https://gitee.com/overmind1980/oeasypython` 
---

flask 最小应用

安装

  • 安装Flask
pip install Flask
  • 安装结果

图片描述

建立环境

  • 建立网站目录
mkdir myproject
  • 进入目录
cd myproject
  • 编辑app文件
vi app.py
  • 新建网站项目目录
    • 并且进入这个目录

图片描述

  • 编辑文件

编辑基础

from flask import Flask

app = Flask(__name__)

@app.route("/")
def hello_world():
    return "<p>Hello, oeasy!</p>"

if __name__ == "__main__":
    app.run(debug=True)
  • 编辑一个app.py

图片描述

运行

图片描述

  • 保存并运行app.py
    • 这个最小应用

浏览web app

  • 鼠标放到链接上
    • 右键 打开这个链接

图片描述

浏览最小应用

  • 每次在火狐刷新页面
    • 都会在后台有所提示
      • 访客的ip
      • 访问时间
      • 访问的位置

图片描述

  • 任务达成
    • 如何理解应用(app)呢?
    • application 这个词怎么来的呢?

apply

  • application的词根是
    • apply
    • 其中ply 的 对应play 折叠
      • fold

图片描述

  • 把自己的信息
    • 折叠好
    • 封装 成一个整体
    • 提交申请

apply

  • 意思是连接到一起
    • 也指的是往身体上摸点东西
    • 抹点草药这种

图片描述

  • 应用什么东西干什么事情

图片描述

  • 总而言之就是用起来

applicant

  • applicant
    • [ˈæplɪkənt]
    • 申请人(尤指求职、进高等学校等);

图片描述

  • 产生连接、进入工作

imply

  • imply

    • im 在里面
    • ply 折叠
    • 折叠在里面
  • 将信息封好提供

    • 暗示 imply

图片描述

  • infer
    • 推断

reply

  • reply
    • re 再一次
    • ply 折叠
    • 再一次折叠

图片描述

  • 回复消息

complex

  • complex
    • com 一起
    • plex 折叠
    • 都折叠到一起
    • 一团乱麻

图片描述

  • 复杂的

complicated

  • complicated
    • com 一起
    • pli 折叠

图片描述

  • 难以理解的

application

  • application的意思最早也是
    • 连接起来
    • 用起来

图片描述

  • 一个用起来的动作

计算机应用

  • 1969年的时候特指
    • program designed to carry out specific tasks or solve specific problems within a larger system" is a shortening of application program (1969).
  • 在一个大型系统中
    • 用来完成特定任务或者解决特殊问题的
    • 应用程序
    • 也简称应用

图片描述

  • myproject
    • 也就是用flask建立的一个新应用
  • Flask的网址在哪里呢?

网址

图片描述

图片描述

开启外网模式

图片描述

  • 修改代码

图片描述

  • 如何理解 外网模式 呢?

访问网页

  • 如果是购买的云资源
    • 这样就可以使用公网ip访问网站了

图片描述

  • 可以修改端口吗?

修改端口

from flask import Flask

app = Flask(__name__)

@app.route("/")
def hello_world():
    return "<p>Hello, oeasy!</p>"

if __name__ == "__main__":
    app.run(debug=True,host="0.0.0.0",port=8080)
  • 访问8080端口

图片描述

  • 如何 让app 停止服务 呢?

停止服务

  • 同时按下 ctrl + c

图片描述

  • web 服务已停止
    • 浏览器无法访问地址了

图片描述

  • 如果 想要不停服 更新
    • 该怎么做呢?

调试模式效果

  • 重启服务器
python3 app.py
  • 在服务器不停止的情况下
    • 再开一个新的终端

图片描述

修改app.py

  • 编辑app.py

图片描述

  • 保存app.py

后台自动更新

  • 修改并且保存 后
    • 动态网页服务器flask
    • 会自动加载更新的文件

图片描述

  • 刷新页面
    • 会更新到 最新的状态

图片描述

  • 如果 不是Debug模式
    • py文件 需要停服更新
      1. 停止服务器
      2. 修改代码
      3. 重起服务器

调试模式的作用

  • 服务器
    • 无需停止
    • 修改后 自动加载

图片描述

  • 这就是
    • 调试模式 的 作用
    • 动态加载 py代码的变化

总结

  • 这次开启了最小应用
    • 并用python3直接运行
from flask import Flask

app = Flask(__name__)

@app.route("/")
def hello_world():
    return "<p>Hello, oeasy!</p>"

if __name__ == "__main__":
    app.run(debug=True,host="0.0.0.0",port=8080)
  • app.run有三个参数
参数 作用
debug=True 进入调试模式
host="0.0.0.0" 外网访问
port=8080 设置端口
  • 现在服务器将各种信息直接输出到屏幕
    • 输出之后就没了
    • 可以将后台信息输出到日志吗??🤔
  • 下次再说!👋

  • 本文来自 oeasy Python 系统教程。
  • 想完整、扎实学 Python,
  • 搜索 oeasy 即可。