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,界面返回:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/342043.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

代码随想录 day27|day28|day29

回溯2 切割问题:是在每个节点判断是否是要剪枝收割元素。 startidx 是切割起点,i是本次切割终点 分割回文串 复原ip地址 非递减子序列 都是在树的节点依照题意判断,之后决定是否剪枝。 也就是都有if判断来剪枝 。 下面是非递减子序列。 下…

关于stm32的软件复位

使用软件复位的目的: 软件复位并不会擦除存储器中的数据,它只是将处理器恢复到复位状态,即中断使能位被清除,系统寄存器被重置,但RAM和Flash存储器中的数据保持不变。 STM32软件复位(基于库文件V3.5) ,对…

IDC发布《中国WAAP厂商技术能力评估,2024》研究报告

从市场规模来看,未来WAAP将逐步替代WAF,成为Web应用安全市场主流产品,同时也将涵盖API安全等其它市场。 随着云原生和微服务架构的兴起,Web业务的部署和管理方式发生了巨大变化。以APP应用和小程序为代表的移动应用使用量骤增&am…

使用眼精星票证识别系统识别国外护照的操作指南

你知道吗?在这个全球化的大潮中,处理和管理各类国际证件简直是头疼得要命! 想象一下,你面前堆满了来自世界各地的护照,每个护照上的信息都要手动录入,这得花多少时间啊!不过,别急&am…

vscode 离线下载指定版本插件和安装方法

1、背景 由于不同的vscode版本需要安装对应的插件版本,一般情况下,vscode版本会落后于vscode插件库提供的可以下载的插件版本,网页一般只会提供最新的插件下载版本,因此我们需要下载指定的版本需要采取一些措施。 2、获取需要安…

2.1.4 采用配置类与注解方式使用MyBatis

实战概述:采用配置类与注解方式使用MyBatis 创建MyBatis配置类 在net.huawei.mybatis.config包中创建MyBatisConfig类,用于配置MyBatis核心组件,包括数据源、事务工厂和环境设置。 配置数据源和事务 使用PooledDataSource配置MySQL数据库连接…

生命在于学习——Python人工智能原理(3.2)

三、深度学习 (二)人工神经网络 人工神经网络是模仿人类大脑神经系统工作原理所创建的数学模型,有并行的分布处理能力、高容错性和自我学习等特征。 1、感知器 感知器由Frank Roseblatt于1957年提出,是一种广泛使用的线性分类…

K8s种的service配置

什么是service 官方的解释是:   k8s中最小的管理单元是pod;而service是 将运行在一个或一组 Pod 上的网络应用程序公开为网络服务的方法;   Kubernetes 中 Service 的一个关键目标是让你无需修改现有应用以使用某种服务发现机制。 你可以在 Pod 集合中运行代码…

安防综合管理系统EasyCVR视频汇聚平台GA/T 1400协议中的关键消息交互示例

在当今的信息化时代,公共安全防范日益成为保障社会和谐稳定的关键。视频监控系统作为现代安全防范的重要手段,正不断在公安、交通、城市管理等领域发挥着越来越重要的作用。而GA/T 1400协议视图库,作为公安视频图像信息应用系统的标准&#x…

计算机网络 期末复习(谢希仁版本)第1章

大众熟知的三大网络:电信网络、有线电视网络、计算机网络。发展最快起到核心的是计算机网络。Internet是全球最大、最重要的计算机网络。互联网:流行最广、事实上的标准译名。互连网:把许多网络通过一些路由器连接在一起。与网络相连的计算机…

Python dateutil库:日期和时间处理的利器

更多Python学习内容:ipengtao.com Python的dateutil库是一个强大且灵活的日期和时间处理工具。它扩展了标准库中的datetime模块,提供了更多的功能和更高的灵活性。dateutil库特别适用于复杂的日期解析、日期计算、时区转换和重复事件处理。本文将详细介绍…

【全开源】在线投票系统(微信公众号+PC端)

🔥在线投票系统,让决策更民主更高效!🚀​​ 🌈 一、什么是在线投票系统? 在数字化时代,我们越来越多地依赖科技来辅助我们的工作与生活。在线投票系统,就是这样一个神奇的工具。简…

【云原生】Kubernetes----RBAC用户资源权限

目录 引言 一、Kubernetes安全机制概述 二、认证机制 (一)认证方式 1.HTTPS证书认证 1.1 证书颁发 1.2 config文件 1.3 认证类型 1.4 Service Account 1.4.1 作用 1.4.2 包含内容 1.4.3 与Secret的关系 2.Bearer Tokens 3.基本认证 三、鉴…

Python编程学习第一篇——制作一个小游戏休闲一下

到上期结束,我们已经学习了Python语言的基本数据结构,除了数值型没有介绍,数值型用的非常广,但也是最容易理解的,将在未来的学习中带大家直接接触和学习掌握。后续我们会开始学习这门语言的一些基础语法和编程技巧&…

【Python数据挖掘实战案例】机器学习LightGBM算法原理、特点、应用---基于鸢尾花iris数据集分类实战

一、引言 1、简要介绍数据挖掘的重要性和应用 在数字化时代,数据已经成为企业和社会决策的重要依据。数据挖掘作为一门交叉学科,结合了统计学、机器学习、数据库技术和可视化等多个领域的知识,旨在从海量数据中提取有价值的信息&#xff0c…

回归模型的算法性能评价

一、概述 在一般形式的回归问题中,会得到系列的预测值,它们与真实值(ground truth)的比较表征了模型的预测能力,为有效量化这种能力,常见的性能评价指标有平均绝对误差(MAE)、均方误…

【论文解读】针对机器人技术的大模型

1、简要介绍 大型语言模型(LLM)经历了显著的发展,并越来越多地跨各个领域集成。值得注意的是,在机器人任务规划领域,LLM利用其先进的推理和语言理解能力,基于自然语言指令制定精确和高效的行动规划。然而&a…

C基础与SDK调试方法

REVIEW 上次学习了一下软件使用流程zynq PS点灯-CSDN博客 本次学习一下C编程基础与调试方法 1. 硬件编程原理 小梅哥视频链接: 07_Xilinx嵌入式裸机硬件编程原理_哔哩哔哩_bilibili 对应的课程笔记:【zynq课程笔记】【裸机】【第7课 】【硬件编程原理…

使用双升压转换器扩展高转换比设计的功率范围

任何升压转换器设计都会对从输入到输出的电压升高程度存在实际限制。脉宽调制 (PWM) 控制器具有时序限制,限制了场效应晶体管 (FET) 的允许接通和断开时间。时序限制将有效地限制可实现的升压比,尽管这个缺点在使用电感器而不是变压器或耦合电感器作为其…

【Uniapp】uniapp微信小程序定义图片地址全局变量

错误写法: main.js Vue.prototype.$imgUrl 图片地址这么写之后 就发现压根不起作用;获取到的是undefined 正确写法: 返回函数,后面可以拼上OSS图片完整路径 Vue.prototype.$imgUrl (url) > {return ("https://地址…