
Python
文章平均质量分 50
Python笔记
竹筒饭啊
这个作者很懒,什么都没留下…
展开
-
正则表达式
Python通过re模块实现对正则表达式的支持。原创 2024-06-13 10:24:06 · 684 阅读 · 0 评论 -
动态语言特性
_slots__对动态添加成员、成员方法有限制。对动态添加类属性、类方法没有限制。types.MethodType的使用是告诉run的self参数是p1。__slots__只对本类有限制,不限制子类。slots限制成员属性和方法。原创 2024-06-11 13:52:03 · 283 阅读 · 0 评论 -
迭代器的概念 - for循环的本质
生成器都是Iterator对象,但是list、dict、str虽然是Iterable(可迭代对象),但却不是Iterator(迭代器)即实现了iter方法和next方法的对象就是迭代器。原创 2023-12-12 22:52:20 · 373 阅读 · 0 评论 -
openpyxl库(1)
workbook来源工作簿。min_col开始列。min_row开始行。max_col结束列。max_row结束行。原创 2023-09-06 21:35:51 · 260 阅读 · 0 评论 -
xlwt\xlrd\xlutils库
更新效果:新生成了xlrd测试-copy.xlsx。表格示例:将红框中的数据补齐。原创 2023-09-04 21:06:55 · 186 阅读 · 0 评论 -
装饰器核心
装饰器本质上是一个Python函数(其实就是闭包),它可以让其他函数在不需要做任何代码变动的前提下增加额外的功能,装饰器的返回值也是一个函数对象。functool.wraps是Python的内置装饰器,用于在定义装饰器时保留原始函数的元信息(如函数名、文档字符串等)。staticmethod装饰器同样用于类中的方法,这表示这个方式是一个静态方法,意味着该方法可以直接被调用无需实例化,同时也意味着它没有self参数,也无法访问实例化后的对象。当有多个装饰器时,离函数近的装饰器会优先被执行。原创 2023-09-02 15:20:17 · 144 阅读 · 0 评论 -
函数式编程核心
高阶函数、闭包closure、偏函数、map函数、reduce函数、filter函数、sorted函数原创 2023-08-22 22:09:07 · 116 阅读 · 0 评论 -
协程Coroutines
协程(Coroutines),也叫纤程(Fiber)。全称协同程序,用来实现任务协作。是一种在线程中,比线程更轻量化的存在,由程序员自己写程序来管理。当出现IO阻塞时,CPU一直等待IO返回,处于空转状态。这时候用协程,可以执行其他任务。当IO返回结果后,再回来处理数据。充分利用了IO等待时间,提高了效率。原创 2023-07-23 21:50:04 · 169 阅读 · 0 评论 -
进程Process
进程(Process):拥有自己独立的堆和栈,既不共享堆,也不共享栈,进程由操作系统调度;进程切换需要的资源最大,效率低。原创 2023-07-23 20:05:01 · 126 阅读 · 0 评论 -
线程Thread
一个线程如果将一个Event对象的信号标志设置为真,它将唤醒所有等待这个Event对象的线程。Python代码的执行由Python虚拟机来控制,Python设计之初就考虑要在解释器的主循环中,同时只有一个线程在执行,即在任意时刻,只有一个线程在解释器中运行。线程同步其实就是一种等待机制,多个需要同时访问此对象的线程进入这个对象的等待池形成队列,等待前面的线程使用完毕后,下一个线程再使用。互斥锁是多个线程一起抢,抢到锁的线程先执行,没抢到的线程需要等待,等互斥锁使用完释放后,其他等待的线程再去抢这个锁。原创 2023-07-19 21:35:50 · 113 阅读 · 0 评论 -
Python并发编程
同步和异步强调的时消息通信机制。同步(synchronous):A调用B,等待B返回结果后,A继续执行。异步(asynchronous):A调用B,A继续执行,不等待B返回结果;B有结果了通知A,A再做处理。原创 2023-07-13 21:54:50 · 94 阅读 · 0 评论 -
Python文件处理
ASCIIAmerican Standard Code for Information Interchange,美国信息交换标准代码。这是世界上最早最通用的单字节编码系统,主要用来显示现代英语及其他西欧语言。ASCII码用7位表示,只能表示128个字符。只定义了128个字符,用7bit即可完全编码。儿一字节8bit的容量是256,所以一字节ASCII的编码最高位总是0ISO8859-1。原创 2023-06-27 22:24:45 · 494 阅读 · 0 评论 -
继承与组合
除了继承,组合也可以实现代码的复用。组合的核心就是将父类对象作为子类的属性。has-a关系,可以使用组合。也能实现一个类拥有另一个类的方法和属性。is-a关系,可以使用继承。从而实现子类拥有父类的方法和属性。原创 2023-05-29 22:56:52 · 64 阅读 · 0 评论 -
特殊方法、运算符重载、特殊属性
Python对象中包含很多双下划线开始和结束的属性,这些都是特殊属性,有特殊用法。Python的运算符实际上是通过调用对象的特殊方法实现的。可以重写上面的特殊方法,实现运算符的重载。原创 2023-05-29 22:07:00 · 102 阅读 · 0 评论 -
属性和方法命名
_xxx:类中的私有成员,只有类对象自己能访问,子类对象也不能访问。但是类外部可以通过对象名._类名__xxx这种特殊方式访问。Python不存在严格意义的私有成员。_xxx:保护成员,不能用from module import *导入,只有类对象和子类对象能访问这些成员。__xxx__:系统定义的特殊成员。原创 2023-03-27 21:44:07 · 92 阅读 · 0 评论 -
nonlocal关键字
nonlocal和global原创 2023-03-05 21:46:07 · 173 阅读 · 0 评论 -
递归函数、嵌套函数
递归函数、嵌套函数原创 2023-03-05 21:26:42 · 198 阅读 · 0 评论 -
eval()函数
eval()函数原创 2023-03-05 20:50:12 · 71 阅读 · 0 评论 -
lambda表达式和匿名函数
lambda表达式原创 2023-03-05 20:36:47 · 210 阅读 · 0 评论 -
Python参数
Python参数原创 2023-03-02 22:12:26 · 54 阅读 · 0 评论 -
浅拷贝、深拷贝
拷贝对象,并且会连子对象的内存也全部递归拷贝一份,对子对象的修改不会影响源对象。拷贝对象、但不拷贝子对象的内容,只是拷贝子对象的引用。原创 2023-03-02 20:54:08 · 66 阅读 · 0 评论 -
Python练手小脚本-按后缀分类文件
按照文件后缀分类文件原创 2023-02-28 21:06:05 · 75 阅读 · 0 评论 -
Python集合
集合是无序可变的,元素不能重复。集合底层是字典实现的,集合的所有元素都是字典中的键对象,因此是不能重复且唯一的。原创 2023-02-20 21:50:18 · 98 阅读 · 0 评论 -
Python字典
字典是键值对的无序可变序列,字典中的每个元素都是一个键值对,包含键对象和值对象。可以通过键对象实现快速获取、删除、更新对应的值对象。原创 2023-02-20 21:34:57 · 94 阅读 · 0 评论 -
Python元组
Python元组原创 2023-02-14 22:15:37 · 56 阅读 · 0 评论 -
Python列表
Python列表原创 2023-02-14 20:19:09 · 125 阅读 · 0 评论 -
Python字符串
Python中,字符串属于不可变对象,不支持原地修改,如果需要修改其中的值,只能创建新的字符串对象。比较的是对象的地址,即id(obj1)是否和id(obj2)相等。in和not in判断某个字符(子字符串)是否存在于字符串中。=对字符串进行比较,是否含有相同的字符。产生新的字符串,每个单词首字母都大写。产生新的字符串,所有字符转换为小写。产生新的字符串,所有字符转换为大写。产生新的字符串,所有字符大小写互换。判断字符串a是否以字符串b开头。判断字符串a是否以字符串b结尾。产生新的字符串,首字母大写。原创 2023-02-13 21:11:09 · 93 阅读 · 0 评论 -
Python字符串拼接+和join()的区别
使用字符串拼接符+,会生成新的字符串对象,因此不推荐使用+来拼接字符串。推荐使用join函数,因为join函数在拼接字符串之前会计算所有字符串的长度,然后逐一拷贝,仅新建一次对象。使用join效率更高。原创 2023-02-08 22:27:05 · 335 阅读 · 0 评论 -
Python整数缓存问题
命令行模式下,Python仅仅对比较小的整数对象进行缓存(范围为[-5, 256])缓存起来C语言底层用数组实现,连续分配空间,便于查找,而并非是所有整数对象。不在[-5,256]出现的数,缓存到链表中,不连续分配空间。== 比较的是两个对象的内容是否相等,值是否相等,默认调用对象的 __eq__()方法。is 运算符比 == 效率高,在变量和None进行比较时,应该使用 is。文件模式下,所有数字都会被缓存,范围是:[-无穷大,+无穷大])is 比较两个对象的 id 值是否相等,是否指向同一个内存地址。原创 2023-02-08 21:41:22 · 270 阅读 · 0 评论 -
读取表格数据绘制正态分布图
import statisticsimport mathimport pandas as pdimport numpy as npimport matplotlib.pyplot as pltfrom scipy import statsexcelFile = r"C:\工作簿.xlsx" # 需要修改的地方# 读取车位长度列df = pd.read_excel(excelFile, sheet_name="列名", usecols="AC", names=None) # 需要修改的.原创 2022-03-23 17:44:46 · 281 阅读 · 0 评论