当前位置: 首页 > news >正文

Python Flask 入门开发

Python基础学习:

  • Pyhton 语法基础
  • Python 变量
  • Python控制流
  • Python 函数与类
  • Python Exception处理
  • Python 文件操作
  • Python 日期与时间
  • Python Socket的使用
  • Python 模块
  • Python 魔法方法与属性

Flask基础学习:

  • Python中如何选择Web开发框架?
  • Python Flask 入门开发
  • 如何使用virtualenv实现python环境的隔离?
  • Python中使用国内源头下载依赖
  • Python Flask 路由配置
  • Flask 使用Context上下文
  • Python Flask实现蓝图Blueprint配置和模块渲染

FlaskPython中目前比较流行的一款Web框架Flask小巧精简,且便于扩展。Flask内置Jinja2模板引擎模块实现前端模板语言渲染。本篇文章主要给出Flask开发学习指南。

Flask是一款流行的Python Web开发框架。轻量级的Web框架使得我们可以选择需要的模块进行搭建,也可以扩展所有需要的支持模块。Flask采用的是MVC模式,结构设计非常优秀,采用的Jinja2模块引擎,更好和前端模块进行结合。

纵观python框架,我们不难看出python开发的这些优点:

  • 简易完整的Flask文档,中文文档也很齐全,方便我们快速上手
  • 社区活跃度较高,较高的使用占比,可以让我们很快找到开发过程中出现的问题
  • Flask模块扩展生态很好,基本覆盖我们工作的大多数场景,如后端面板扩展Flask-Admin,数据库升级迁移扩展Flask-Migratejwt实现Flask-JWT-Extended,数据库扩展Flask-SqlAlchemy等等
  • Flask颗粒度小,组装灵活、简便
  • 集成了包括单元测试、cookiesunicode,并提供多米仕开发和调试器

安装Flask

安装Flask之前,简易先在项目中添加虚拟环境,是的项目的python环境与本地python环境能进行隔离,关于Python虚拟环境的搭建,可以参考:如何使用virtualenv实现python环境的隔离?。安装命令如下:

(venv)$ pip install Flask  // 在venv环境中通过命令安装Flask

从Hello World开始

首先我们来创建一个Hello World程序来了解Flask的使用。

 # !/usr/bin/env python
# -*- encoding:utf-8 -*-from flask import Flaskapp = Flask(__name__) #创建一个Flask示例@app.route('/hello') #通过route创建路由
def helloWorld():return "Hello world !"if __name__ == '__main__':# 通过run启动一个server服务app.run(host='0.0.0.0',port=8080)

常见后运行py文件启动服务:

(venv) F:\projects\github\pythonNotes>python flask/hello.py* Serving Flask app 'hello'* Debug mode: off
WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.   * Running on all addresses (0.0.0.0)* Running on http://127.0.0.1:8080* Running on http://192.168.1.14:8080
Press CTRL+C to quit

访问服务:http://127.0.0.1:8080/hello,界面返回:

相关文章:

  • Invalid JSON text:“Invalid value.“ at position 0 in value for column ‘user.info
  • 引擎:UI
  • 用爬虫实现---模拟填志愿
  • SmartEDA VS Multisim/Proteus:电子设计江湖,谁主沉浮?
  • Aws EC2,kubeadm方式安装kubernetes(k8s)
  • 【QT】将字符串条件转换为一个可以编程检查的条件
  • 技术周总结2024.06.03~06.09(K8S HikariCP数据库连接池)
  • gorse修改开源项目后,如何使用Docker compose发布
  • 光猫、路由器的路由模式、桥接模式、拨号上网
  • k8s-mysql主从部署
  • 部署kubesphere报错
  • 【运维】如何更换Ubuntu默认的Python版本,update-alternatives如何使用
  • C++从入门到精通(最详细教程,12万总结,带你掌握c++知识,涵盖大量知识点)
  • 3、前端本地环境搭建
  • 门面模式Api网关(SpringCloudGateway)
  • 【跃迁之路】【585天】程序员高效学习方法论探索系列(实验阶段342-2018.09.13)...
  • 11111111
  • Android优雅地处理按钮重复点击
  • bootstrap创建登录注册页面
  • Debian下无root权限使用Python访问Oracle
  • hadoop集群管理系统搭建规划说明
  • java多线程
  • jquery cookie
  • Laravel 菜鸟晋级之路
  • Terraform入门 - 1. 安装Terraform
  • vue2.0一起在懵逼的海洋里越陷越深(四)
  • 阿里云前端周刊 - 第 26 期
  • 阿里中间件开源组件:Sentinel 0.2.0正式发布
  • 基于游标的分页接口实现
  • 简析gRPC client 连接管理
  • 提升用户体验的利器——使用Vue-Occupy实现占位效果
  • AI算硅基生命吗,为什么?
  • JavaScript 新语法详解:Class 的私有属性与私有方法 ...
  • 智能情侣枕Pillow Talk,倾听彼此的心跳
  • ​​​​​​​sokit v1.3抓手机应用socket数据包: Socket是传输控制层协议,WebSocket是应用层协议。
  • ​LeetCode解法汇总307. 区域和检索 - 数组可修改
  • (C#)一个最简单的链表类
  • (Matalb回归预测)PSO-BP粒子群算法优化BP神经网络的多维回归预测
  • (机器学习的矩阵)(向量、矩阵与多元线性回归)
  • (转)es进行聚合操作时提示Fielddata is disabled on text fields by default
  • (转)ObjectiveC 深浅拷贝学习
  • (转载)跟我一起学习VIM - The Life Changing Editor
  • ****Linux下Mysql的安装和配置
  • .bat批处理(十一):替换字符串中包含百分号%的子串
  • .net core webapi Startup 注入ConfigurePrimaryHttpMessageHandler
  • .NET Core 项目指定SDK版本
  • .net framwork4.6操作MySQL报错Character set ‘utf8mb3‘ is not supported 解决方法
  • .net 发送邮件
  • .net 反编译_.net反编译的相关问题
  • .NET 跨平台图形库 SkiaSharp 基础应用
  • .Net多线程Threading相关详解
  • .net和php怎么连接,php和apache之间如何连接
  • .NET开源项目介绍及资源推荐:数据持久层
  • .Net下的签名与混淆
  • .php文件都打不开,打不开php文件怎么办