下载地址英文版(文字版)
官方文档The Python Standard Library
《Python标准库》一书的目录《python标准库》
译者序
序
前言
第1章文本1
1.1string—文本常量和模板1
1.1.1函数1
1.1.2模板2
1.1.3高级模板4
1.2textwrap—格式化文本段落6
1.2.1示例数据6
1.2.2填充段落6
1.2.3去除现有缩进7
1.2.4结合dedent和fill7
1.2.5悬挂缩进8
1.3re—正则表达式9
1.3.1查找文本中的模式9
1.3.2编译表达式10
1.3.3多重匹配11
1.3.4模式语法12
1.3.5限制搜索22
1.3.6用组解析匹配23
1.3.7搜索选项28
1.3.8前向或后向36
1.3.9自引用表达式40
1.3.10用模式修改字符串44
1.3.11利用模式拆分46
1.4difflib—比较序列49
1.4.1比较文本体49
1.4.2无用数据51
1.4.3比较任意类型53
第2章数据结构55
2.1collections—容器数据类型56
2.1.1counter56
2.1.2defaultdict59
2.1.3deque59
2.1.4namedtuple63
2.1.5ordereddict65
2.2array—固定类型数据序列66
2.2.1初始化67
2.2.2处理数组67
2.2.3数组与文件68
2.2.4候选字节顺序68
2.3heapq—堆排序算法69
2.3.1示例数据70
2.3.2创建堆70
2.3.3访问堆的内容72
2.3.4堆的数据极值73
2.4bisect—维护有序列表74
2.4.1有序插入74
2.4.2处理重复75
2.5queue—线程安全的fifo实现76
2.5.1基本fifo队列77
2.5.2lifo队列77
2.5.3优先队列78
2.5.4构建一个多线程播客客户程序79
2.6struct—二进制数据结构81
2.6.1函数与struct类81
2.6.2打包和解包81
2.6.3字节序82
2.6.4缓冲区84
2.7weakref—对象的非永久引用85
2.7.1引用85
2.7.2引用回调86
2.7.3代理87
2.7.4循环引用87
2.7.5缓存对象92
2.8copy—复制对象94
2.8.1浅副本94
2.8.2深副本95
2.8.3定制复制行为96
2.8.4深副本中的递归96
2.9pPRint—美观打印数据结构98
2.9.1打印99
2.9.2格式化99
2.9.3任意类100
2.9.4递归101
2.9.5限制嵌套输出101
2.9.6控制输出宽度101
第3章算法103
3.1functools—管理函数的工具103
3.1.1修饰符103
3.1.2比较111
3.2itertools—迭代器函数114
3.2.1合并和分解迭代器114
3.2.2转换输入116
3.2.3生成新值117
3.2.4过滤119
3.2.5数据分组121
3.3Operator—内置操作符的函数接口123
3.3.1逻辑操作123
3.3.2比较操作符124
3.3.3算术操作符124
3.3.4序列操作符126
3.3.5原地操作符127
3.3.6属性和元素“获取方法”128
3.3.7结合操作符和定制类129
3.3.8类型检查130
3.4contextlib—上下文管理器工具131
3.4.1上下文管理器api131
3.4.2从生成器到上下文管理器134
3.4.3嵌套上下文135
3.4.4关闭打开的句柄136
第4章日期和时间138
4.1time—时钟时间138
4.1.1壁挂钟时间138
4.1.2处理器时钟时间139
4.1.3时间组成140
4.1.4处理时区141
4.1.5解析和格式化时间143
4.2datetime—日期和时间值管理144
4.2.1时间144
4.2.2日期145
4.2.3timedelta147
4.2.4日期算术运算148
4.2.5比较值149
4.2.6结合日期和时间150
4.2.7格式化和解析151
4.2.8时区151
4.3calendar—处理日期152
4.3.1格式化示例152
4.3.2计算日期155
第5章数学计算157
5.1decimal—定点数和浮点数的数学运算157
5.1.1decimal157
5.1.2算术运算158
5.1.3特殊值160
5.1.4上下文160
5.2fractions—有理数165
5.2.1创建 fraction实例165
5.2.2算术运算167
5.2.3近似值168
5.3random—伪随机数生成器168
5.3.1生成随机数168
5.3.2指定种子169
5.3.3保存状态170
5.3.4随机整数171
5.3.5选择随机元素172
5.3.6排列172
5.3.7采样174
5.3.8多个并发生成器175
5.3.9systemrandom176
5.3.10非均匀分布177
5.4math—数学函数178
5.4.1特殊常量178
5.4.2测试异常值179
5.4.3转换为整数180
5.4.4其他表示181
5.4.5正号和负号183
5.4.6常用计算184
5.4.7指数和对数186
5.4.8角190
5.4.9三角函数191
5.4.10双曲函数194
5.4.11特殊函数195
第6章文件系统197
6.1os.path—平台独立的文件名管理198
6.1.1解析路径198
6.1.2建立路径200
6.1.3规范化路径201
6.1.4文件时间202
6.1.5测试文件203
6.1.6遍历一个目录树204
6.2glob—文件名模式匹配205
6.2.1示例数据205
6.2.2通配符206
6.2.3单字符通配符207
6.2.4字符区间207
6.3linecache—高效读取文本文件208
6.3.1测试数据208
6.3.2读取特定行209
6.3.3处理空行209
6.3.4错误处理210
6.3.5读取python源文件210
6.4tempfile—临时文件系统对象211
6.4.1临时文件211
6.4.2命名文件213
6.4.3临时目录214
6.4.4预测名214
6.4.5临时文件位置215
6.5shutil—高级文件操作216
6.5.1复制文件216
6.5.2复制文件元数据218
6.5.3处理目录树220
6.6mmap—内存映射文件222
6.6.1读文件223
6.6.2写文件223
6.6.3正则表达式225
6.7codecs—字符串编码和解码226
6.7.1unicode入门226
6.7.2处理文件228
6.7.3字节序230
6.7.4错误处理232
6.7.5标准输入和输出流235
6.7.6编码转换238
6.7.7非unicode编码239
6.7.8增量编码240
6.7.9unicode数据和网络通信242
6.7.10定义定制编码245
6.8stringio—提供类文件api的文本缓冲区251
6.9fnmatch—unix式glob模式匹配252
6.9.1简单匹配252
6.9.2过滤253
6.9.3转换模式254
6.10dircache—缓存目录列表254
6.10.1列出目录内容255
6.10.2标注列表256
6.11filecmp—比较文件257
6.11.1示例数据258
6.11.2比较文件260
6.11.3比较目录261
6.11.4程序中使用差异262
第7章数据持久存储与交换267
7.1pickle—对象串行化268
7.1.1导入268
7.1.2编码和解码字符串数据268
7.1.3处理流269
7.1.4重构对象的问题271
7.1.5不可pickle的对象272
7.1.6循环引用273
7.2shelve—对象持久存储275
7.2.1 创建一个新shelf275
7.2.2写回276
7.2.3特定shelf类型277
7.3anydbm—dbm数据库278
7.3.1数据库类型278
7.3.2创建一个新数据库279
7.3.3打开一个现有数据库279
7.3.4错误情况280
7.4whichdb—识别dbm数据库格式281
7.5sqlite3—嵌入式关系数据库281
7.5.1创建数据库282
7.5.2获取数据285
7.5.3查询元数据286
7.5.4行对象287
7.5.5查询中使用变量288
7.5.6批量加载290
7.5.7定义新列类型291
7.5.8确定列类型294
7.5.9事务296
7.5.10隔离级别298
7.5.11内存中数据库302
7.5.12导出数据库内容302
7.5.13sql中使用python函数304
7.5.14定制聚集306
7.5.15定制排序307
7.5.16线程和连接共享308
7.5.17限制对数据的访问309
7.6xml.etree.elementtree—xml操纵api311
7.6.1解析xml文档312
7.6.2遍历解析树313
7.6.3查找文档中的节点314
7.6.4解析节点属性315
7.6.5解析时监视事件317
7.6.6创建一个定制树构造器319
7.6.7解析串321
7.6.8用元素节点构造文档322
7.6.9美观打印xml323
7.6.10设置元素属性325
7.6.11由节点列表构造树327
7.6.12将xml串行化至一个流329
7.7csv—逗号分隔值文件331
7.7.1读文件332
7.7.2写文件332
7.7.3方言334
7.7.4使用字段名338
第8章数据压缩与归档340
8.1zlib—gnu zlib压缩340
8.1.1处理内存中数据340
8.1.2增量压缩与解压缩341
8.1.3混合内容流342
8.1.4校验和343
8.1.5压缩网络数据343
8.2gzip—读写gnu zip文件347
8.2.1写压缩文件348
8.2.2读压缩数据349
8.2.3处理流350
8.3bz2—bzip2压缩352
8.3.1内存中一次性操作352
8.3.2增量压缩和解压缩354
8.3.3混合内容流354
8.3.4写压缩文件355
8.3.5读压缩文件357
8.3.6压缩网络数据358
8.4tarfile—tar归档访问362
8.4.1测试tar文件362
8.4.2从归档文件读取元数据362
8.4.3从归档抽取文件364
8.4.4创建新归档365
8.4.5使用候选归档成员名366
8.4.6从非文件源写数据366
8.4.7追加到归档367
8.4.8处理压缩归档368
8.5zipfile—zip归档访问369
8.5.1测试zip文件369
8.5.2从归档读取元数据369
8.5.3从归档抽取归档文件371
8.5.4创建新归档371
8.5.5使用候选归档成员名373
8.5.6从非文件源写数据373
8.5.7利用zipinfo实例写374
8.5.8追加到文件375
8.5.9python zip归档376
8.5.10限制377
第9章加密378
9.1hashlib—密码散列378
9.1.1示例数据378
9.1.2md5示例379
9.1.3sha1示例379
9.1.4按名创建散列379
9.1.5增量更新380
9.2hmac—密码消息签名与验证381
9.2.1消息签名381
9.2.2sha与md5382
9.2.3二进制摘要383
9.2.4消息签名的应用383
第10章进程与线程387
10.1subprocess—创建附加进程387
10.1.1运行外部命令388
10.1.2直接处理管道391
10.1.3连接管道段393
10.1.4与其他命令交互394
10.1.5进程间传递信号396
10.2signal—异步系统事件400
10.2.1接收信号400
10.2.2获取注册的处理程序401
10.2.3发送信号402
10.2.4闹铃403
10.2.5忽略信号403
10.2.6信号和线程404
10.3threading—管理并发操作406
10.3.1thread对象406
10.3.2确定当前线程407
10.3.3守护与非守护线程409
10.3.4列举所有线程411
10.3.5派生线程412
10.3.6定时器线程414
10.3.7线程间传送信号415
10.3.8控制资源访问416
10.3.9同步线程421
10.3.10限制资源的并发访问422
10.3.11线程特定数据423
10.4multiprocessing—像线程一样管理进程425
10.4.1multiprocessing基础426
10.4.2可导入的目标函数427
10.4.3确定当前进程428
10.4.4守护进程428
10.4.5等待进程430
10.4.6终止进程431
10.4.7进程退出状态432
10.4.8日志434
10.4.9派生进程435
10.4.10向进程传递消息435
10.4.11进程间信号传输438
10.4.12控制资源访问439
10.4.13同步操作440
10.4.14控制资源的并发访问441
10.4.15管理共享状态443
10.4.16共享命名空间444
10.4.17进程池445
10.4.18实现mapreduce447
第11章网络通信452
11.1socket—网络通信452
11.1.1寻址、协议簇和套接字类型452
11.1.2tcp/ip客户和服务器460
11.1.3用户数据报客户和服务器467
11.1.4unix域套接字469
11.1.5组播473
11.1.6发送二进制数据476
11.1.7非阻塞通信和超时478
11.2select—高效等待i/o 479
11.2.1使用select()479
11.2.2有超时的非阻塞i/o484
11.2.3使用 poll()486
11.2.4平台特定选项490
11.3socketserver—创建网络服务器491
11.3.1服务器类型491
11.3.2服务器对象491
11.3.3实现服务器491
11.3.4请求处理器492
11.3.5回应示例492
11.3.6线程和进程497
11.4asyncore—异步i/o499
11.4.1服务器500
11.4.2客户501
11.4.3事件循环503
11.4.4处理其他事件循环505
11.4.5处理文件507
11.5asynchat—异步协议处理器508
11.5.1消息终止符508
11.5.2服务器和处理器508
11.5.3客户511
11.5.4集成512
第12章internet514
12.1urlparse—分解url514
12.1.1解析515
12.1.2反解析517
12.1.3连接518
12.2basehttpserver—实现web服务器的基类519
12.2.1http get519
12.2.2http post521
12.2.3线程与进程522
12.2.4处理错误523
12.2.5设置首部524
12.3urllib—网络资源访问525
12.3.1利用缓存实现简单获取526
12.3.2参数编码527
12.3.3路径与url529
12.4urllib2—网络资源访问530
12.4.1http get530
12.4.2参数编码532
12.4.3http post533
12.4.4增加发出首部534
12.4.5从请求提交表单数据535
12.4.6上传文件536
12.4.7创建定制协议处理器539
12.5base64—用ascii编码二进制数据541
12.5.1base64编码541
12.5.2base64解码542
12.5.3url安全的变种543
12.5.4其他编码543
12.6robotparser—网络蜘蛛访问控制544
12.6.1robots.txt545
12.6.2测试访问权限545
12.6.3长久蜘蛛546
12.7cookie—http cookie547
12.7.1创建和设置cookie547
12.7.2morsel548
12.7.3编码值550
12.7.4接收和解析cookie首部550
12.7.5候选输出格式551
12.7.6废弃的类552
12.8uuid—全局惟一标识符552
12.8.1uuid 1—ieee 802 mac地址552
12.8.2uuid 3和5—基于名字的值554
12.8.3uuid 4—随机值556
12.8.4处理uuid对象556
12.9json—javascript对象记法557
12.9.1编码和解码简单数据类型557
12.9.2优质输出和紧凑输出558
12.9.3编码字典560
12.9.4处理定制类型561
12.9.5编码器和解码器类563
12.9.6处理流和文件565
12.9.7混合数据流566
12.10xmlrpclib—xml-rpc的客户端库567
12.10.1连接服务器568
12.10.2数据类型570
12.10.3传递对象573
12.10.4二进制数据573
12.10.5异常处理575
12.10.6将调用结合在一个消息中575
12.11simplexmlrpcserver—一个xml-rpc服务器577
12.11.1一个简单的服务器577
12.11.2备用api名578
12.11.3加点的api名 579
12.11.4任意api名580
12.11.5公布对象的方法581
12.11.6分派调用583
12.11.7自省api584
第13章email587
13.1smtplib—简单邮件传输协议客户587
13.1.1发送email消息587
13.1.2认证和加密589
13.1.3验证email地址592
13.2smtpd—示例邮件服务器593
13.2.1邮件服务器基类593
13.2.2调试服务器595
13.2.3代理服务器596
13.3imaplib—imap4客户库596
13.3.1变种597
13.3.2连接到服务器597
13.3.3示例配置598
13.3.4列出邮箱599
13.3.5邮箱状态601
13.3.6选择邮箱602
13.3.7搜索消息603
13.3.8搜索规则604
13.3.9获取消息605
13.3.10完整消息608
13.3.11上传消息609
13.3.12移动和复制消息611
13.3.13删除消息612
13.4mailbox—管理邮件归档614
13.4.1mbox614
13.4.2maildir616
13.4.3其他格式622
第14章应用构建模块623
14.1getopt—命令行选项解析624
14.1.1函数参数624
14.1.2短格式选项624
14.1.3长格式选项625
14.1.4一个完整的例子625
14.1.5缩写长格式选项627
14.1.6gnu选项解析627
14.1.7结束参数处理629
14.2optparse—命令行选项解析器629
14.2.1创建optionparser629
14.2.2短格式和长格式选项630
14.2.3用getopt比较631
14.2.4选项值632
14.2.5选项动作635
14.2.6帮助消息639
14.3argparse—命令行选项和参数解析644
14.3.1与optparse比较644
14.3.2建立解析器644
14.3.3定义参数644
14.3.4解析命令行645
14.3.5简单示例645
14.3.6自动生成的选项652
14.3.7解析器组织653
14.3.8高级参数处理659
14.4readline—gnu readline库666
14.4.1配置667
14.4.2完成文本668
14.4.3访问完成缓冲区670
14.4.4输入历史674
14.4.5hook676
14.5getpass—安全密码提示677
14.5.1示例677
14.5.2无终端使用getpass678
14.6cmd—面向行的命令处理器679
14.6.1处理命令680
14.6.2命令参数681
14.6.3现场帮助682
14.6.4自动完成683
14.6.5覆盖基类方法684
14.6.6通过属性配置cmd 686
14.6.7运行shell命令687
14.6.8候选输入688
14.6.9sys.argv的命令689
14.7shlex—解析shell语法690
14.7.1加引号的字符串691
14.7.2嵌入注释692
14.7.3分解693
14.7.4包含其他token源693
14.7.5控制解析器694
14.7.6错误处理696
14.7.7posix与非posix解析697
14.8configparser—处理配置文件698
14.8.1配置文件格式699
14.8.2读取配置文件699
14.8.3访问配置设置701
14.8.4修改设置705
14.8.5保存配置文件706
14.8.6选项搜索路径707
14.8.7用接合合并值709
14.9日志—报告状态、错误和信息消息712
14.9.1应用与库中的日志记录712
14.9.2记入文件712
14.9.3旋转日志文件713
14.9.4详细级别714
14.9.5命名日志记录器实例715
14.10fileinput—命令行过滤器框架716
14.10.1m3u文件转换为rss716
14.10.2进度元数据718
14.10.3原地过滤719
14.11atexit—程序关闭回调721
14.11.1示例721
14.11.2什么情况下不调用atexit函数722
14.11.3处理异常724
14.12sched—定时事件调度器725
14.12.1有延迟地运行事件725
14.12.2重叠事件726
14.12.3事件优先级727
14.12.4取消事件727
第15章国际化和本地化729
15.1gettext—消息编目729
15.1.1转换工作流概述729
15.1.2由源代码创建消息编目730
15.1.3运行时查找消息编目732
15.1.4复数值733
15.1.5应用与模块本地化735
15.1.6切换转换736
15.2locale—文化本地化api736
15.2.1探查当前本地化环境737
15.2.2货币742
15.2.3格式化数字742
15.2.4解析数字743
15.2.5日期和时间744
第16章开发工具745
16.1pydoc—模块的联机帮助746
16.1.1纯文本帮助746
16.1.2html帮助746
16.1.3交互式帮助746
16.2doctest—通过文档完成测试747
16.2.1开始747
16.2.2处理不可预测的输出748
16.2.3traceback752
16.2.4避开空白符753
16.2.5测试位置758
16.2.6外部文档761
16.2.7运行测试763
16.2.8测试上下文766
16.3unittest—自动测试框架769
16.3.1基本测试结构769
16.3.2运行测试770
16.3.3测试结果770
16.3.4断言真值772
16.3.5测试相等性773
16.3.6近似相等774
16.3.7测试异常775
16.3.8测试固件775
16.3.9测试套件776
16.4traceback—异常和栈轨迹777
16.4.1支持函数777
16.4.2处理异常777
16.4.3处理栈780
16.5cgitb—详细的traceback报告783
16.5.1标准traceback转储783
16.5.2启用详细traceback783
16.5.3traceback中的局部变量785
16.5.4异常属性787
16.5.5html输出788
16.5.6记录traceback789
16.6pdb—交互式调试工具791
16.6.1启动调试工具791
16.6.2控制调试工具794
16.6.3断点803
16.6.4改变执行流813
16.6.5用别名定制调试工具819
16.6.6保存配置设置821
16.7trace—执行程序流822
16.7.1示例程序822
16.7.2跟踪执行822
16.7.3代码覆盖823
16.7.4调用关系825
16.7.5编程接口826
16.7.6保存结果数据828
16.7.7选项829
16.8profile和pstats—性能分析830
16.8.1运行性能分析工具830
16.8.2在上下文中运行832
16.8.3pstats:保存和处理统计信息833
16.8.4限制报告内容835
16.8.5调用图836
16.9timeit—测量小段python代码的执行时间837
16.9.1模块内容837
16.9.2基本示例837
16.9.3值存储在字典中838
16.9.4从命令行执行840
16.10compileall—字节编译源文件841
16.10.1编译一个目录842
16.10.2编译sys.path842
16.10.3从命令行执行843
16.11pyclbr—类浏览器843
16.11.1扫描类845
16.11.2扫描函数846
第17章运行时特性847
17.1site—全站点配置847
17.1.1导入路径847
17.1.2用户目录849
17.1.3路径配置文件850
17.1.4定制站点配置852
17.1.5定制用户配置853
17.1.6禁用site模块854
17.2sys—系统特定的配置854
17.2.1解释器设置855
17.2.2运行时环境860
17.2.3内存管理和限制862
17.2.4异常处理867
17.2.5底层线程支持869
17.2.6模块和导入875
17.2.7跟踪程序运行情况892
17.3os—可移植访问操作系统特定特性898
17.3.1进程所有者898
17.3.2进程环境900
17.3.3进程工作目录901
17.3.4管道901
17.3.5文件描述符905
17.3.6文件系统权限905
17.3.7目录906
17.3.8符号链接907
17.3.9遍历目录树907
17.3.10运行外部命令909
17.3.11用os.fork()创建进程910
17.3.12等待子进程911
17.3.13spawn913
17.3.14文件系统权限913
17.4platform—系统版本信息914
17.4.1解释器915
17.4.2平台916
17.4.3操作系统和硬件信息916
17.4.4可执行程序体系结构918
17.5resource—系统资源管理918
17.5.1当前使用情况919
17.5.2资源限制919
17.6gc—垃圾回收器922
17.6.1跟踪引用922
17.6.2强制垃圾回收925
17.6.3查找无法收集的对象引用928
17.6.4回收阈限和代931
17.6.5调试933
17.7sysconfig—解释器编译时配置940
17.7.1配置变量940
17.7.2安装路径942
17.7.3python版本和平台945
第18章语言工具947
18.1warnings—非致命警告947
18.1.1分类和过滤948
18.1.2生成警告948
18.1.3用模式过滤949
18.1.4重复的警告951
18.1.5候选消息传送函数951
18.1.6格式化952
18.1.7警告中的栈层次952
18.2abc—抽象基类953
18.2.1为什么使用抽象基类953
18.2.2抽象基类如何工作954
18.2.3注册一个具体类954
18.2.4通过派生实现955
18.2.5abc中的具体方法956
18.2.6抽象属性957
18.3dis—python字节码反汇编工具960
18.3.1基本反汇编961
18.3.2反汇编函数961
18.3.3类963
18.3.4使用反汇编进行调试963
18.3.5循环的性能分析965
18.3.6编译器优化970
18.4inspect—检查现场对象972
18.4.1示例模块972
18.4.2模块信息973
18.4.3检查模块974
18.4.4检查类975
18.4.5文档串 976
18.4.6获取源代码977
18.4.7方法和函数参数979
18.4.8类层次结构980
18.4.9方法解析顺序981
18.4.10栈与帧982
18.5exceptions—内置异常类984
18.5.1基类985
18.5.2产生的异常985
18.5.3警告类型998
第19章模块与包999
19.1imp—python的导入机制999
19.1.1示例包999
19.1.2模块类型999
19.1.3查找模块1000
19.1.4加载模块1001
19.2zipimport—从zip归档加载python代码1003
19.2.1示例1003
19.2.2查找模块1004
19.2.3访问代码1004
19.2.4源代码1005
19.2.5包1006
19.2.6数据1006
19.3pkgutil—包工具1008
19.3.1包导入路径1008
19.3.2包的开发版本1010
19.3.3用pkg文件管理路径1011
19.3.4嵌套包1013
19.3.5包数据1014
博主新浪微博:http://weibo.com/cstmr