摘要:页面优化插件 应用场景 原生的页面在对于前端不够熟悉的情况下,编写起来是比较困难的。包括设置一些样式,从头再学习 CSS 成本较大。 如果要简化学习成本,可以通过响应式的前端框架 Bootstrap 完成,通过使用 Bootstrap,开发者可以节省大量的时间和精力。 在 Bootstrap 的基础
阅读全文
11 2023 档案
摘要:路由跨域 跨域限制 在进行前后端联调的时候,可能会遇到下面这个报错: 这个错误就是跨域问题,是发生在浏览器端的。浏览器中有一个同源策略,它是一个安全策略,用来限制源的交互。 同源策略:是一种约定,它是浏览器核心也最基本的安全功能,它会阻止一个域的 JS 脚本和另外一个域的内容进行交互,如果缺少了同源
阅读全文
摘要:静态文件 静态文件(static files)和模板概念相反,指的是内容不需要动态生成的文件,比如图片、CSS 文件和 JavaScript 脚本等。 在 Flask 中,需要创建一个 static 目录来保存静态文件,它应该和程序模块、templates 在同一目录层级。 生成静态文件 URL 在
阅读全文
摘要:路由跳转 应用场景 场景: 假设在新增信息页面,完成新增操作之后需要跳转到展示页面。 展示页面是个动态页面,它的逻辑是,如果有参数,则展示相关参数的结果,如果没有参数,则展示所有的信息。 解决: 使用 url_for() 生成 url ,再使用 redirect() 方法完成路径的重定向。实现当完成
阅读全文
摘要:简介 Web 程序里,访问一个地址通常会返回一个包含各类信息的 HTML 页面。其中包含变量和运算逻辑的 HTML 或其他格式的文本叫做模板,执行这些变量替换和逻辑计算工作的过程被称为渲染。Flask 模板渲染是通过 Jinja2 引擎来完成的。 默认情况下,Flask 会从模块同级的 templa
阅读全文
摘要:蓝图与视图 简介 Flask 中的蓝图(Blueprint)是一种组织和管理应用程序路由和视图的机制。它允许开发者将相关功能的路由和视图进行分组,从而更好地组织项目结构和实现模块化开发。蓝图可以极大地简化大型应用并为扩展提供集中的注册入口。 Flask 可以通过蓝图来组织 URL 以及处理请求。如果
阅读全文
摘要:测试平台环境配置 在 Flask 中,可以使用 app.run() 方法来运行应用程序并设置要监听的主机和端口。 app.run() 方法默认会监听在默认的主机地址 '127.0.0.1'(或 'localhost')和端口 5000 上。可以通过访问 http://localhost:5000/
阅读全文
摘要:请求与响应 - 处理响应信息 针对于后端服务,需要针对请求返回对应的响应信息。 响应信息可以响应很多类型的信息类型。常见的比如文本类型,还有非常通用的 JSON 数据。 在 Flask 中,可以使用视图函数来处理接口请求并生成相应的响应。而且 Flask 提供了多种方式来构建和返回接口响应。 接口响
阅读全文
摘要:请求与响应 - 处理请求数据 request 对象 当浏览器去访问一个地址时,HTTP 协议会向后台传递一个 request 对象。这个 request 对象包含请求头、请求参数、以及请求方式。后台可以取到 request,然后进行逻辑处理。 在 Flask 中,可以使用 request 对象来处理
阅读全文
摘要:接口常用请求方法 Flask 框架支持常见的 HTTP 请求方法,最常用的请求方法为: 请求 说明 GET 获取服务器资源 POST 新增服务器资源 PUT 更新服务器资源(客户端提供改变后的完整资源) DELETE 删除服务器资源 这些请求方式都是去操作资源的。 GET:一般是从 URI 中从 服
阅读全文
摘要:接口路由技术 什么是路由 路由是将 URL 地址与应用程序中的函数相映射的过程。当用户在浏览器中输入特定的 URL 地址时,Flask 会调用与该地址相匹配的函数并返回相应的结果。 路由的应用场景 在 Web 应用程序都通过路由技术使用 URL 链接来控制网页显示的内容,只要知道 URL 链接,即使
阅读全文
摘要:Flask 介绍 Flask 是一个轻量级的 Web 开发框架。它是依赖 Jinja2 和 Werkzeug WSGI 服务的一个微型框架。之所以说是轻量级,是因为 Flask 框架有这两个核心的内容。其中 Jinja2 是模板引擎,Werkzeug 是路由模块。 所以如果想实现其它的功能,都需要进
阅读全文
摘要:Python面向对象的概念 面向过程编程 面向过程编程(Procedural Programming)是一种基于过程或函数的编程范式。 它将程序视为一系列的顺序执行的过程或函数,每个过程或函数完成特定的任务,通过调用其他过程或函数来协同工作。 在面向过程编程中,数据和函数(过程)是分离的,函数可以直
阅读全文
摘要:类和对象 什么是类 在面向对象编程中,类(Class)是一种定义现实事物属性和方法的蓝图或模板。类描述了现实事物的特征(属性)和行为(方法)。可以把类看作是创建现实事物的原型。 类是现实事物的抽象,它定义了一类具有相似特征和行为的事物的通用结构和行为。类提供了对象所需的状态和行为,并定义了对象的初始
阅读全文
摘要:实例属性 动态绑定 Python 中的属性变量都是使用动态绑定的方式绑定到实例对象上的。 格式:实例对象名.实例属性名 class Student: pass# 实例对象s1 = Student()s2 = Student()# 为实例对象s1动态绑定属性s1.name = "Tom"s1.age
阅读全文
摘要:构造方法 在上一章节中,通过动态绑定的方式为实例对象添加了属性。 但是这种操作显然是不符合逻辑的。每个实例对象一旦被实例,就应该含有类中定义的属性。 此时就需要使用构造方法来实现。 构造方法 构造方法__init__(self) 在实例对象时自动调用, self 参数不需要手动传参,该参数在实例对象
阅读全文
摘要:多态 多态是面向对象编程中三大概念之三,它允许不同的对象对同一个消息作出不同的响应。 简单来说,多态是指同一个方法或操作符在不同的对象实例上可以有不同的行为。这意味着可以通过一个共同的接口或基类引用不同的子类对象,并根据实际的对象类型来调用相应的方法。 多态性在实际应用中提供了很多好处,包括: 简化
阅读全文
摘要:继承 继承是面向对象编程中的三大概念之二,指的是一个类基于另一个类来创建。 创建出来的新类称为子类或派生类。被继承的类称为父类或基类。 通过继承,子类可以继承父类的属性和方法,并且可以在此基础上添加新的属性和方法,或者对继承的属性和方法进行修改。 继承的主要特点包括: 继承关系:继承创建了一个父类和
阅读全文
摘要:访问控制 在Python中并没有像Java,C++ 一样,提供了 public, protected, private 这样的访问控制修饰符,Python 通过一种称为 名称改写的方式,实现其它语言中访问控制修饰符的作用。 但是要注意的是,在Python中名称改写只是一种约定,并没有真正的实现私有的
阅读全文
摘要:静态方法 除了类方法,Python 的类中还有一种静态方法。 静态方法在定义时,需要使用 @staticmethod 装饰器进行装饰,与类方法不同的是,静态方法没有默认参数。 静态方法和普通的函数本质上是一样的,只是定义在了类中。 一般情况下,静态方法同类方法一样,也是在封装工具类时使用,区别在于,
阅读全文
摘要:除了类属性,类还有类方法。 同样,类方法也可以通过类名直接进行使用,类方法在定义时,需要使用 @classmethod 装饰器进行修饰。 与实例方法不同的是,实例方法有一个默认参数 self,代表当前调用方法的实例对象,而类方法的默认参数为 cls, 该参数也是在使用时,由解释器自动传入的,但传入的
阅读全文
摘要:类对象与实例对象不同,可以理解为实例对象是由类对象复制而来,每个实例对象之间具有数据独立性。而类对象在程序运行过程中,只有一个。 既然是对象,那么就可以拥有自己的属性,在类中定属性时,属性名有self前缀的是实例属性,而在类中直接定义的属性即为类属性。 # 定义一个饮水机类class WaterDi
阅读全文
摘要:enumerate是python的内置函数,适用于python2.x和python3.x。该函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,返回一个enumerate对象实例。 enumerate在字典上是枚举、列举的意思enumerate参数为可遍历/可迭代的对象(如列表
阅读全文
摘要:正方形: 1.使用嵌套 for 循环,外层控制行数,内层控制每行输出的星号数量。 2.控制换行 for i in range(5): for j in range(5): print('*', end=' ') print() 代码讲解-正方形 外部循环 for i in range(5): 运行
阅读全文
摘要:生成电脑的随机选择:使用 random.choice 函数从一组选项中随机选择电脑的出拳选项,将选择存储在另一个变量中print('猜拳游戏开始:')player = input('请出拳(石头/剪刀/布):\n')computer = random.choice(['石头', '剪刀', '布']
阅读全文
摘要:随机数 在程序开发过程中,经常会使用到随机数,Python 中 ,可以使用 random 模块中的 randint() 函数获取随机数。 格式: randint(start, stop) start 为随机数获取初始范围 stop 为随机数获取结束范围,包含该值。 使用该函数前需要导入, from
阅读全文
摘要:range() 函数是 Python 内置的一个函数,用于生成一个整数序列,常用于 for 循环中。它有三种使用方式: start : 可选参数,表示起始值,默认为0。 stop : 表示结束值,不包含在范围内。 step : 可选参数, 表示步长,默认为1。 # 确定开始和结束范围nums = l
阅读全文
摘要:循环语句-for-in Python并没有提供类似C语言中那种传统意义上的for循环,而是提供了一种专门处理字符串,元组,列表,字典等可迭代的序列类型数据的增强型for循环。 遍历可迭代对象 使用for-in循环处理可迭代对象,可以使操作过程变的极其简单。 遍历字符串 s = "Hello Hogw
阅读全文
摘要:什么是 while 循环 在日常的生活中有时候循环的次数通常不会在刚开始就知道,而是满足条件之后就停止循环,如有一路公交车不是固定时间间隔发车,而是在人数满足多少个之后就发车,一直到晚上的11点准时收工,那么没有到11点的话就会一直重复,直到条件不满足时才结束的循环,称为条件循环。只要条件为真,这种
阅读全文
摘要:什么是拷贝 拷贝是指使用一个已存在一个对象,生成一个新的对象,两个对象在内存中具有独立的存储空间。 浅拷贝是指是创建一个新的对象时,只拷贝内容是原始对象的引用,而不是创建原始对象的副本数据。 深拷贝是指创建一个新的对象,并递归地复制原始对象及其所有嵌套对象的内容,而不仅仅是复制它们的引用。 浅拷贝不
阅读全文
摘要:集合操作 添加操作 add(ele) 向集合中添加一个元素,如果元素则不产生任何影响 s = {1, 2, 3} s.add(4)print(s)s.add("Hello")s.add("Hello")print(s) pdate(others) 更新集合,添加来自 others 中的所有元素,ot
阅读全文
摘要:什么是集合 集合是一种数据类型,用于存储多个元素,并确保元素的唯一性。 集合中的元素是无序的,不可通过索引或切片进行访问。 集合的主要特点是元素不重复,相同的元素在集合中只会出现一次。 我们可以使用大括号 {} 或 set() 函数来定义和创建集合。 集合提供了各种集合运算,如并集(两个集合中的所有
阅读全文
摘要:字典操作 字典数据获取类操作 keys() 用来获取字典中所有的 key, 保存到一个列表中,并以 dict_keys类型返回 stu = {'name': 'Tom', 'age': 23, 'gender': 'male', 'address': 'BeiJing'}ks = stu.keys(
阅读全文
摘要:字典 字典是Python中的一种容器数据类型,用于存储键值对(key-value)的数据集合。 和现实生活中的字典类似,通过一个 key 对应一个确定唯一的值。 字典是无序的,可变的,且可以存储任意类型的元素 字典的定义 Python 中使用花括号,保存key-value形式表示字典。 key-va
阅读全文
摘要:相同点 元组和列表在Python中,都是有序的,可迭代的数据结构。 元组和列表都是异构的,都可以存放不同数据类型的元素。 不同点 元组是不可变的,不可以进行增删改操作,一旦定义,无法修改 列表是可变的,可以对列表中的元素进行增删改操作,空列表有实际意义。 内存占用 由于元组与列表内部的实现机制不同,
阅读全文
摘要:获取列表元素个数 格式:len(l) ```pythonl = [1,2,3,4,5]length = len(l)``` 统计查找操作 count(value) 在列表中统计参数 value 出现的次数 l = [1,2,3,4,5,1,2,3,3]print(l.count(3)) index(
阅读全文
摘要:什么是列表 列表是Python中最常用的数据类型之一。它是一种有序、可变,异构的数据集合,可以存储多个不同类型的元素。 列表的特点 列表是Python中的一种数据结构,具有以下特点: 有序性:列表中的元素按照添加的顺序进行存储,每个元素都有一个对应的索引,可以通过索引访问和操作列表中的元素。 可变性
阅读全文
摘要:什么是元组 元组是一种数据类型,在Python中用于存储多个元素。元组可以容纳多个值,但它们有一些重要的特点。 元组是有序的数据结构,这意味着元组中的元素按照它们的顺序存储,并且可以通过索引进行访问和引用。 元组是不可变的,一旦定义后,元组中的数据不可以进行添加,修改和删除等操作。 元组是异构的,可
阅读全文
摘要:变量 变量的概念 无论使用什么语言编程,总要各种处理数据,比如数字、字符串等等。处理数据就需要使用变量来表示数据。所谓变量,就是用来表示数据的名字。 变量的定义 Python 中定义变量非常简单,只需将数据通过等号(=)赋值给一个符合命名规范的标识符即可。 name = "霍格沃兹" Python
阅读全文
摘要:什么是关键字 关键字是指在 Python 编程语言中具有特殊含义的保留单词。这些关键字被 Python 解释器用于识别程序的结构和语义,从而执行相应的操作。 在 Python 中,关键字不可以用作变量名、函数名或其他标识符的名称,否则会导致语法错误。 查看关键字 Python 的关键字可能会随着版本
阅读全文
摘要:什么是标识符 在 Python 中,标识符是用来标识变量、函数、类、模块和其他对象的名称。 需要注意的是,在定义标识符的时候,虽然很自由,但是也不能随心所欲,合法的标识符需要遵从一定的规范。 命名规范 标识符的命名,需要遵从 4 项规范。 标识符的命名,需要遵从 4 项规范。 1. 见名知意 一个项
阅读全文
摘要:什么是字符串格式化 字符串格式化是一种将变量或值插入到字符串中的过程,以创建具有动态内容的字符串。 在Python中,我们可以使用format()方法和f-string(格式化字符串字面值)来进行字符串格式化。 format()方法 format()方法是一种传统的字符串格式化方法。它使用占位符 {
阅读全文
摘要:1.Git简介 Git 是目前世界上最先进的分布式版本控制系统。 Git 优点: 适合分布式开发,强调个体。 公共服务器压力和数据量都不会太大。 速度快、灵活。 任意两个开发者之间可以很容易的解决冲突。 离线工作。 2.Git安装 官网下载地址:https://git-scm.com/downloa
阅读全文