python笔记
文章平均质量分 88
这个手刹不太灵儿
始终相信美好的事情会发生
展开
-
Python Flask框架学习(二)
flask获取参数request对象request.path 获取请求资源的路径 -str类型request.args 获取url里的参数 -dict类型request.form 获取body里面携带的表单数据 -dict类型request.json 获取传递过来的json格式数据,并转化为对象request.method 获取请求的方法request.1、get 通过url传递参数安装postmanfrom flask import Blueprint, request# 请求里原创 2022-05-17 13:43:08 · 478 阅读 · 0 评论 -
Python Flask框架学习(一)
web服务器都是基于http协议的;http协议:hyper text transfer protocol1991发布第一个版本:0.9 ,最简单的协议,只有get1996发布了1.0版本,引入了post、head命令;1997发布了1.1版本,引入了持久连接;2015发布了2.0版本,引用了多路复用,现在变成了帧、流格式;目前为止1.1还是主流版本;web应用处理流程:1、浏览器发送http请求2、服务器收到请求,生成一个html文档3、服务器把html文档作为http响应bo.原创 2022-05-17 13:42:46 · 969 阅读 · 0 评论 -
Python 上下文管理器
文章目录with语句支持上下文管理器协议的对象contextlib模块上下文管理器:完成分配和释放资源。例如:文件的打开和关闭、数据库的连接、线程进程锁with语句python2.5中加入的关键字withwith语句仅仅能对支持上下文管理协议的对象使用。with语句的表达式的作用是返回一个遵循特定协议的对象,具体来说,该对象必须定义一个 __enter__方法和__exit__方法# 自定义上下文管理器class ContextManager(): def __enter__(s原创 2022-05-01 00:46:45 · 145 阅读 · 0 评论 -
Python 闭包与装饰器
1、闭包在函数中可以(嵌套)定义另一个函数时,如果内部的函数引用了外部的函数的变量,则可能产生 闭包变量的生命周期延期了,不随着外函数的完成自动释放,被内函数引用了。满足条件:必须要有内嵌函数内函数必须引用外函数的变量外函数必须返回内函数def outer(x): a = 300 def inner(): # 内嵌函数 print(x + a) # 引用外函数变量 return inner # 外函数返回内函数d = outer()d()o原创 2022-04-30 23:11:02 · 183 阅读 · 0 评论 -
Python 函数式编程与高阶函数
1、高阶函数把函数作为参数传入,这样的函数称为高阶函数def func1(x, y, f): return f(x) + f(y)# 把函数作为参数传入参数的时候,不要加括号num = func1(-10, 2, abs)# abs代表取绝对值函数,表示调用这个函数,获取它的返回值print(num)map给定列表,计算f(x)=x*xlst = [1, 2, 3, 4, 5, 6, 7] print([x*x for x in lst]) #列表推导式re = (x*x原创 2022-04-30 17:02:48 · 310 阅读 · 0 评论 -
Python 面向对象2_元类-抽象基类
元类type:创建类的类,称之为元类class A(): passa = A()print(type(a)) #<class '__main__.A'>print(type(A)) #<class 'type'>print(type(type)) #<class 'type'>• 语法:type(类名, 父类的元组(针对继承的情况,可以为空),包含属性的字典(名称和值))• 创建类:MyClass = type(‘MyClass’, (原创 2022-04-30 01:50:29 · 708 阅读 · 1 评论 -
Python 正则表达式
1、正则表达式作用a) 文本过滤、数据挖掘b) 合法性验证优点:提高工作效率、节省代码缺点:复杂,难于理解2、re模块re.search( )从任意地方查找第一个匹配到的>>> import re>>> result = re.search("hejin","hello,world,I am hejin")>>> result<_sre.SRE_Match object; span=(17, 22), match='heji原创 2022-04-29 19:46:00 · 378 阅读 · 0 评论 -
Python 进程线程协程
1、内核操作系统的核心‘linux操作系统的五大子系统进程调度——>先进先出、短作业优先、轮询、优先级文件系统——> linux ext3 ext4 xfs ,Windows NTFS内存管理——> 虚拟内存 虚拟地址映射 段页机制 缺页中段 内存的分配管理:伙伴系统网络接口——>端口进程通信——> 管道,信号,消息队列,socket,共享内存计算机的组成:cpu+存储+io资源分类:计算资源(cpu)+存储资源(内存+磁盘)2、进程线程并发和并行多任务原创 2022-04-26 18:54:25 · 1488 阅读 · 0 评论 -
Python数据类型(容器类型)
容器类型:列表、字典、集合、字符串 都是可迭代对象1. 列表(list)特点有序项目集合:有下标,可以获取可以放任何数据类型对象可变数据类型:在原地址内存空间里能修改的就是可变数据类型可相加相乘>>> lst = [] #定义空列表>>> type(lst)<class 'list'>>>> lst2 = list() # 用函数定义空列表>>> type(lst2)<class 'lis原创 2022-04-26 16:27:19 · 1262 阅读 · 0 评论 -
Python数据类型、进制转换、字符串格式化
1. 整数、浮点数和复数浮点数即带有小数点的数字,是不精确的float组成: 由整数位,小数点,小数位组成,也可以用科学计数法表示Decimal是精确的from decimal import Decimal #从decimal 包导入Decimal 类mydec = Decimal("3.22") #将字符串转换成decimal类型print(mydec, type(mydec))mydec2 = Decimal(3.22) #浮点型3.22 是不精确的,转换成decima原创 2022-04-25 03:03:08 · 2980 阅读 · 2 评论 -
Python 面向对象1_类和对象-属性方法-下划线-魔术方法-自省
1、概念常见的三种编程范式:函数式编程高阶函数、返回函数、装饰器等面向过程编程(函数)着重于作什么面向对象编程(类)着重于谁去做**类:**用来描述具有相同的属性和方法的对象的集合—>车类**对象:**通过类定义的数据结构实例—>我的车**属性:**对象的描述信息---->车的零部件**方法:**对象的行为—>车的功能(将零部件组装,实现某种功能)...原创 2022-01-12 01:12:35 · 409 阅读 · 0 评论 -
Python运算符与表达式、流程控制
1、表达式由一个或多个操作数通过操作符组合而成2、运算符算数运算符:python2 与python3 的区别 :python2里面只有 地板除 ,要想真除,只能转化为浮点数相除python3 是真除赋值运算符比较运算符逻辑运算符:假:0, ’ ', 0.0, (), [],{},None, Falseand 前面的是真,返回后面的值;前面的是假,返回前面的值or 前面的是真 ,返回前面的值前面的是假,返回后面的值三个运算符在存在同一个表达式中,运算优先级一样原创 2021-12-29 00:16:24 · 546 阅读 · 0 评论 -
Python起步-基本语法-规范-内建函数-pep8规范
1.基本语法连续赋值>>> a=b=10>>> id(a) 通过id() 查看内内存地址,此处a b内存地址一样1639183968848多项赋值>>> name,sex ='cali','male'>>> name'cali'>>> sex'male'>>> a=77; b=22>>> a77>>> b22交换赋值>原创 2021-12-28 23:55:23 · 350 阅读 · 0 评论 -
Python安装-解释器
Linux官方维护了一套自己的官方源,有些软件不在它的官方源里面,又搞了一个扩展源。pip是Python 包管理工具,该工具提供了对Python 包的查找、下载、安装、卸载的功能。把pip3 之前安装过的包,形成对应的版本号,结合在一起,然后再把它的输出放在xxx.txt中。pip是安装python 的软件的,Python里面需要什么模块就用pip命令安装。环境是一一对应的,pip2执行安装的会到python2里面去。py -0 查看已经安装的python。注:安装额外的东西,先安装它的扩展源。原创 2021-12-28 23:44:01 · 990 阅读 · 0 评论 -
Python 模块与包-下划线
1、模块定义:模块(库)就是Python文件,里面定义了很多的函数、类、变量分类:标准模块(无需安装,python自带)—— import random第三模块(需要安装)——pip install requests、import requests自定义模块(自己写的)一个模块的运行有俩种方式:直接运行(python 文件)、导入运行(import 文件)python包实际上就是一个目录,目录里面可以有一个 init.py区别 python2 VS python3init.p原创 2021-12-14 00:01:03 · 1299 阅读 · 0 评论 -
Python 函数
1、定义函数是实现某个功能的一段代码2、作用方便维护,模块设计减少代码冗余的维护方便3、参数分类按定义分形参:函数定义的时候,指定的参数实参: 函数调用的时候,传递的参数按形参分必选参数:调用的时候一定要传的参数# 必选参数def studentinfo(name, age, sex): # 形参 必选参数 print(f"my name is {name},my age is {age},my sex is {sex}")默认参数:提供默认值,调用时可填可不填原创 2021-12-12 18:33:38 · 425 阅读 · 0 评论 -
Python 推导式-迭代器与生成器
1、推导式又称解析式。推导式是可以从一 个数据序列构建另一个新的数据序列的结构体。1)列表推导式打印奇数a = [1, 2, 3, 4, 5, 6, 7, 8, 9]b = [x for x in a if x % 2 == 1]c = [x ** 2 for x in a if x % 2 == 1]print(b, c)结果:[1, 3, 5, 7, 9] [1, 9, 25, 49, 81]打印30以内的所有能被3整除的数print([i for i in range(1,原创 2021-12-12 13:59:17 · 1272 阅读 · 0 评论 -
Python 异常处理-python2/3差别
常见异常类异常描述NameError尝试访问一个没有申明的变量ZeroDivisionError除数为0SyntaxError语法错误KeyError请求一个不存在的字典关键字IndexError索引超出序列范围AttributeError尝试访问未知的对象属性ValueError传参类型不正确FileNotFoundError文件不存在AssertionError断言异常 assert判断 不对就会报异常IOEr原创 2021-12-11 22:05:11 · 623 阅读 · 0 评论 -
Python 文件操作
1、文本与二进制文件文本文件打开记事本就可以阅读的文件优点:输出内容友好,不需要手动转换缺点: 一个字符占一个字节,文件占用的存储空间较多,读写需要转换(内存—>显示),访问时效率不高二进制文件这类文件将数据按照它的进制编码的形式存储。如BMP。由 于这类文件内容是二进制编码,使用记事本打开是显然是乱码,BMP可用图片查看器解码优点:二进制文件中的数据与数据在内存中的表现形式一致,存储数据占用空间较少,读写不需要进行转换,效率高缺点:二进制文件无法直接以字符形式输出,必须 要经过一个原创 2021-11-30 10:18:58 · 612 阅读 · 0 评论 -
Python 内存管理-深浅拷贝
内存管理机制以引用计数为主,分代回收、标记清除为辅的垃圾回收方式以及对小整型进行缓存和简单字符驻留的内存池机制1、引用计数ptython 中的每个对象都维护一个引用计数 ob_refz字段当有新的引用指向改对象的时候,引用计数+1当无效的引用发生的时候,引用计数-1最后引用技术为0,销毁对象>>> from sys import getrefcount>>> a = 1000>>> getrefcount(a) #实际是引用了1次原创 2021-11-29 10:34:25 · 997 阅读 · 0 评论