python::标准库(数据结构与容器)

一、标准库

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

三、算法库

3.01 functools

管理函数工具:主要工具类是partial。用来包装一个有默认参数的可回调对象。得到的是对象本身是可以回调的。
import functools

3.02 itertools

保证快速、高效的使用内存,而且可以联结在一起表述更为复杂的基于迭代的算法。如:合并和分解迭代器、转换输入、过滤、
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
posted @ 2018-12-03 22:36  osbreak  阅读(219)  评论(0)    收藏  举报