python标准库

以下是为您整理出来关于【python标准库】合集内容,如果觉得还不错,请帮忙转发推荐。

【python标准库】技术教程文章

Python3标准库:heapq堆排序算法【代码】【图】

1. heapq堆排序算法 堆(heap)是一个树形数据结构,其中子节点与父节点有一种有序关系。二叉堆(binary heap)可以使用一个有组织的列表或数组表示,其中元素N的子元素位于2*N+1和2*N+2(索引从0开始)。这种布局允许原地重新组织堆,从而不必再添加或删除元素时重新分配大量内存。 最大堆(max-heap)确保父节点大于或等于其两个子节点。最小堆(min-heap)要求父节点小于或等于其子节点。Python的heapq模块实现了一个最小堆。 1.1 创建堆 ...

Python3标准库:glob文件名模式匹配【代码】【图】

1. glob文件名模式匹配 尽管glob API很小,但这个模块的功能却很强大。只要程序需要查找文件系统中名字与某个模式匹配的一组文件,就可以使用这个模块。要创建一个文件名列表,要求其中各个文件名都有某个特定的扩展名、前缀或者中间都有某个共同的字符串,就可以使用glob而不用编写定制代码来扫描目录内容。 glob的模式规则与re模块使用的正则表达式并不相同。实际上,glob的模式遵循标准UNIX路径扩展规则。只使用几个特殊字符来实...

Python3标准库:random伪随机数生成器【代码】【图】

1. random伪随机数生成器 random模块基于Mersenne Twister算法提供了一个快速伪随机数生成器。原来开发这个生成器是为了向蒙特卡洛模拟生成输入,Mersenne Twister算法会生成大周期近均匀分布的数,因此适用于大量不同类型的应用。 1.1 生成随机数 random()函数从所生成的序列返回下一个随机的浮点值。返回的所有值都落在0<=n<1.0区间内。import randomfor i in range(5):print(%04.3f % random.random(), end= ) print()重复运行这...

Python 标准库 traceback【代码】【图】

traceback背景问题与解决方案更加优雅的方案 背景 程序虽然有打印日志,但是遇到异常还是不知道问题在哪里,比如说下面的代码。 #!/usr/bin/env python3 import loggingdef fun_div(x, y):"""实现一个除法功能"""return x / ydef main():try:# 故意把分母设置为 0{@class=h5 text-secondary mb-4}fun_div(1, 0)except Exception as err:logging.error(err)if __name__ == "__main__":main()运行效果。 python3 main.py ERROR:root...

python标准库(datetime)【代码】

1、datetime模块  对日期、时间、时间戳的处理  1> datetime类    类方法:没有时间对象使用类的方法构造时间对象      today() 返回本地时区当前时间的datetime对象      now(tz=None) 返回当前时间的datetime对象,时间到微秒,如果tz为None,返回和 today() 一样      utcnow() 没有时区的当前时间      fromtimestamp(timestamp, tz=None) 从一个时间戳返回一个datetime对象   ...

Python3标准库:selectors I/O多路复用抽象【代码】【图】

1. selectors I/O多路复用抽象 selectors模块在select中平台特定的I/O监视函数之上提供了一个平台独立的抽象层。 1.1 操作模型 selectors中的API是基于事件的,与select中的poll()类似。它有多个实现,并且这个模块会自动设置别名DefaultSelector来指示对当前系统配置最为高效的一个实现。选择器对象提供了一些方法,可以指定在一个套接字上查找哪些事件,然后以一种平台独立的方式让调用者等待事件。注册对事件的兴趣会创建一个Se...

Python3标准库:concurrent.futures管理并发任务池【代码】【图】

1. concurrent.futures管理并发任务池 concurrent.futures模块提供了使用工作线程或进程池运行任务的接口。线程和进程池的API是一样的,所以应用只做最小的修改就可以在线程和进程之间顺利地切换。 这个模块提供了两种类型的类与这些池交互。执行器(executor)用来管理工作线程或进程池,future用来管理工作线程或进程计算的结果。要使用一个工作线程或进程池,应用要创建适当的执行器类的一个实例,然后向它提交任务来运行。每个任...

Python3标准库:asyncio异步I/O、事件循环和并发工具【代码】【图】

1. asyncio异步I/O、事件循环和并发工具 asyncio模块提供了使用协程构建并发应用的工具。threading模块通过应用线程实现并发,multiprocessing使用系统进程实现并发,asyncio则使用一种单线程单进程方法来实现并发,应用的各个部分会彼此合作,在最优的时刻显式地切换任务。大多数情况下,会在程序阻塞等待读写数据时发生这种上下文切换,不过asyncio也支持调度代码在将来的某个特定时间运行,从而支持一个协程等待另一个协程完成,...

Python3标准库:pickle对象串行化【代码】【图】

1. pickle对象串行化 pickle模块实现了一个算法可以将任意的Python对象转换为一系列字节。这个过程也被称为串行化对象。可以传输或存储表示对象的字节流,然后再重新构造来创建有相同性质的新对象。 1.1 编码和解码字符串中的数据 第一个例子使用dumps()将一个数据结构编码为一个字符串,然后把这个字符串打印到控制台。它使用了一个完全由内置类型构成的数据结构。任何类的实例都可以pickled,如后面的例子所示。import pickle im...

Python标准库 - random模块【代码】

Python中的random模块用于生成随机数。import random# 1.随机小数 print(random.random()) #大于0且小于1之间的随机小数 print(random.uniform(1,3)) #大于1且小于3的随机小数# 2.随机整数 print(random.randint(1,5)) #大于1且小于等于5之间的整数 print(random.randrange(1,10,2)) #大于等于1且小于3之间的整数(且是所有的奇数)# 3.随机选择一个返回 print(random.choice([1,23,[4,5]]))# 4.随机选择多个返回 print(random.s...