一、标准库
1.01 string
import string
具备string或unicode类的特性,对字符串实现参数化。
1.02 textwrap
// 格式化文本段落:缩进、对齐、指定宽度等
import textwrap
1.03 re
// 正则表达式
import re
1.04 difflib
// 用于处理文本序列、比较文本、比较任意类型
import difflib
二、数据结构库
2.01 collection
容器数据类型:内置list、dict、tuple以外的其他容器数据类型
import collections
1.0 跟踪相同的值增加了多少次,可以用来实现其他语言中常用包(bag)或多集合(multiset)数据结构来实现的算法。
collection.Counter
2.0 此方法包括一个方法setdefault()来获取一个值,如果这值不存在,则建立一个默认值。
collection.defaultdict
def default_factory():
return 'default value'
d = collections.defaultdict(default_factory, foo='bar')
3.0 双端队列,支持任意端增加和删除元素
collection.deque
deque
4.0 与tuple类似,使用tuple需要指定对应的索引。使用namedtuple创建的对象,还可以指定名字。
collection.namedtuple('key','value')
5.0 OrderedDict是一个字典子类,使用此模板创建的对象,可以记住其内容的添加的顺序。
collection.OrderedDict
2.02 array
array 模块定义了一个序列数据结构,与list非常相似,所有类型必须是基本类型。
import array
2.03 heapq
列表的最小堆排序算法。
最小堆:父节点小于或等于其子节点。
最大堆:父节点大于或等于其子节点。
import heapq
2.04 bisect
维护有序列表:不必增加一个元素时,都调用sort排序。插入列表时,同时保持有序。
2.05 Queue
提供一个线程安全的FIFO实现
import Queue
与Queue的标准FIFO实现相反,使用先进后出。
Queue.LifoQueue()
优先队列:使用队列内容的有序顺序来决定获取哪一个元素。
Queue.PriorityQueue()
2.06 二进制数据结构
用于字符串和二进制之间转换、打包、解包、字节序、缓冲区等。
import struct
2.07 对象的非永久引用
支持对象的弱引用、引用回调、代理、循环引用
import weakref
2.08 帮助调试内存泄漏
import gc
2.09 复制对象
import copy
copy创建的浅副本是一个新容器。
copy.copy()
copy创建的深副本是一个新容器。
copy.deepcopy()
2.10 美观打印数据结构
import pprint
三、算法库
管理函数工具:主要工具类是partial。用来包装一个有默认参数的可回调对象。得到的是对象本身是可以回调的。
import functools
保证快速、高效的使用内存,而且可以联结在一起表述更为复杂的基于迭代的算法。如:合并和分解迭代器、转换输入、过滤、
import itertools
3.03 operator
内置操作符的函数接口:逻辑操作、比较操作、算术操作符、序列操作符、原地操作符、属性和元素“获取方法”、结合操作符和定制类、类型检查
import ioperator
3.03 contexlib
创建和处理上下文管理工具、生成器、上下文管理工具、嵌套上下文、关闭打开的句柄、
import contexlib
四、日期与事件
4.01 time
管理时钟时间的函数、处理器时钟时间、时间组成、处理时区、解析和结构化时间
import time
4.02 datetime
处理日期和时间函数的类:日期时间解析、格式化、算术运算
import datetime
4.02 calendar
处理日期,管理面向年月和周
import datetime
五、数学计算
5.01 decimal
定点数和浮点数的小数运算
import decimal
5.02 fractions
处理有理数
import fractions
5.03 random
多种类型的伪随机数生成器
import random
5.04 math
数学函数:特殊常量、异常值、数值转换、其他表示、正号和负号、常用计算、
指数和对数、角、三角函数、双曲函数、特殊函数
import math
六、文件系统
6.01 os.path
解析构建处理文件名和路径、遍历目录等
import os.path
6.02 glob
通配符、单字符通配符、字符区间
import glob
6.03 linecache
高效读取文本文件、读取特定行、处理空行、错误处理
import linecache
6.04 tempfile
零时文件系统对象、文件命名、临时目录、预测名、临时文件位置
import tempfile
6.05 shutil
高级文件操作:复制文件、复制文件元数据、处理目录树
import shutil
6.06 mmap
内存映射文件:读文件、写文件、复制模式、
import mmap
6.07 codecs
编码器和解码器:unicode、处理文件、字节序、错误处理、编码错误、标准输入输出、编码转换、非unicode编码、增量编码、网络通信。
import codecs
6.08 StringIO
类文件API的文本缓冲区
import StringIO
6.09 fnmatch
处理UNIX式文件名比较、过滤文件名、转换模式、
import fnmatch
6.10 dircache
缓存目录列表,目录的修改时间改变时会更新、标注列表。
import dircache
6.11 filecmp
比较文件系统中的文件和目录、程序中对比差异
import dircache