没有合适的资源?快使用搜索试试~ 我知道了~
首页Python 3.9.2标准库详细指南:函数、常量与内置类型详解
Python 3.9.2标准库详细指南:函数、常量与内置类型详解
需积分: 14 8 下载量 129 浏览量
更新于2024-07-14
收藏 9.88MB PDF 举报
本资源是《Python标准库参考》的PDF文档,版本为3.9.2,由Guido van Rossum和Python开发团队于2021年3月21日发布,由Python Software Foundation提供。该手册详细介绍了Python语言的核心标准库,旨在帮助开发者更深入理解和利用Python的强大功能。
1. **概述**:
- 文档首先强调了标准库的可用性注释,这表明它包含的内容是经过精心设计和测试的,为开发者提供了丰富的工具集,用于处理各种任务。
2. **内置函数**:
- Python标准库包含众多实用函数,如数学、文件操作、异常处理等,这些都是日常编程中不可或缺的部分。
3. **内置常量**:
- 书中提到的“由site模块添加的常量”可能涉及特定环境或配置相关的变量,如网站地址、默认编码等。
4. **内置类型**:
- 详细分类了逻辑值检测、布尔运算(如and, or, not)、比较操作,以及数字类型(整数、浮点数、复数),并分别探讨了它们的特性和用法,如位运算、附加方法和哈希运算。
- 迭代器和生成器类型有助于处理数据流和无限序列,而序列类型如列表、元组和range则提供了存储和操作有序数据的工具。
- 字符串类型str包括多种操作方法,如格式化字符串,同时介绍了二进制序列类型(bytes, bytearray, memoryview)及其用途和操作。
- 集合类型set和frozenset用于无序不重复元素的集合操作,而映射类型dict提供了键值对的存储结构,有字典视图对象的支持。
- 上下文管理器(context manager)在资源管理和异常处理中扮演重要角色,例如with语句的使用。
- GenericAliasType和StandardGenericCollections涉及到泛型编程的概念,展示了Python在处理不同类型数据时的灵活性。
5. **其他内置类型**:
- 模块(module)是Python组织代码的重要方式,它封装了相关的功能和变量,方便重用和模块化开发。
- 其他内容可能还包括异常类、文件系统操作、日期时间处理、正则表达式、网络编程等领域的核心功能。
这份标准库参考文档为Python开发者提供了详尽的指导,涵盖了Python语言的各个方面,无论是基础语法还是高级特性,都能在这里找到关键信息。通过深入研究和学习这些内容,开发者可以更好地利用Python进行高效和优雅的编程。
21.23 http.cookies --- HTTP 状态管理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1215
21.23.1 Cookie 对象 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1216
21.23.2 Morsel 对象 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1216
21.23.3 示例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1217
21.24 http.cookiejar ——HTTP 客户端的 Cookie 处理 . . . . . . . . . . . . . . . . . . . . . . 1218
21.24.1 CookieJar 和 FileCookieJar 对象 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1220
21.24.2 FileCookieJar subclasses and co-operation with web browsers . . . . . . . . . . . . . . . 1221
21.24.3 CookiePolicy 对象 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1222
21.24.4 DefaultCookiePolicy 对象 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1223
21.24.5 Cookie 对象 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1224
21.24.6 示例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1226
21.25 xmlrpc --- XMLRPC 服务端与客户端模块 . . . . . . . . . . . . . . . . . . . . . . . . . . . 1226
21.26 xmlrpc.client --- XML-RPC client access . . . . . . . . . . . . . . . . . . . . . . . . . . . 1226
21.26.1 ServerProxy 对象 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1228
21.26.2 DateTime 对象 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1229
21.26.3 Binary 对象 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1230
21.26.4 Fault 对象 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1230
21.26.5 ProtocolError
对象
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1231
21.26.6 MultiCall 对象 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1232
21.26.7 Convenience Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1233
21.26.8 Example of Client Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1233
21.26.9 Example of Client and Server Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1234
21.27 xmlrpc.server --- Basic XML-RPC servers . . . . . . . . . . . . . . . . . . . . . . . . . . . 1234
21.27.1 SimpleXMLRPCServer Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1235
21.27.2 CGIXMLRPCRequestHandler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1238
21.27.3 Documenting XMLRPC server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1239
21.27.4 DocXMLRPCServer Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1239
21.27.5 DocCGIXMLRPCRequestHandler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1239
21.28 ipaddress --- IPv4/IPv6 操作库 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1240
21.28.1 方便的工厂函数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1240
21.28.2 IP 地址 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1240
21.28.3 IP Network definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1244
21.28.4 Interface objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1250
21.28.5 Other Module Level Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1251
21.28.6 Custom Exceptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1252
22 多媒体服务 1253
22.1 audioop --- 处理原始音频数据 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1253
22.2
aifc
---
读写
AIFF
和
AIFC
文件
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1256
22.3 sunau --- 读写 Sun AU 文件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1258
22.3.1 AU_read 对象 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1259
22.3.2 AU_write 对象 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1260
22.4 wave --- 读写 WAV 格式文件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1260
22.4.1 Wave_read 对象 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1261
22.4.2 Wave_write 对象 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1262
22.5 chunk --- 读取 IFF 分块数据 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1263
22.6 colorsys --- 颜色系统间的转换 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1264
22.7 imghdr --- 推测图像类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1264
22.8 sndhdr --- 推测声音文件的类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1265
22.9 ossaudiodev --- Access to OSS-compatible audio devices . . . . . . . . . . . . . . . . . . . . 1266
22.9.1 Audio Device Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1266
22.9.2 Mixer Device Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1269
23
国际化
1271
23.1 gettext --- 多语种国际化服务 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1271
23.1.1 GNU gettext API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1271
23.1.2 基于类的 API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1273
23.1.3 国际化 (I18N) 你的程序和模块 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1276
xiv
23.1.4 致谢 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1279
23.2 locale --- 国际化服务 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1279
23.2.1 Background, details, hints, tips and caveats . . . . . . . . . . . . . . . . . . . . . . . . . 1284
23.2.2 For extension writers and programs that embed Python . . . . . . . . . . . . . . . . . . . 1285
23.2.3 Access to message catalogs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1285
24 程序框架 1287
24.1 turtle --- 海龟绘图 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1287
24.1.1 概述 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1287
24.1.2 可用的 Turtle 和 Screen 方法概览 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1289
24.1.3 RawTurtle/Turtle 方法和对应函数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1291
24.1.4 TurtleScreen/Screen 方法及对应函数 . . . . . . . . . . . . . . . . . . . . . . . . . . . 1307
24.1.5 公共类 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1313
24.1.6 帮助与配置 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1314
24.1.7 turtledemo --- 演示脚本集 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1317
24.1.8 Python 2.6 之后的变化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1317
24.1.9 Python 3.0 之后的变化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1318
24.2 cmd --- 支持面向行的命令解释器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1318
24.2.1 Cmd 对象 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1318
24.2.2 Cmd 例子 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1320
24.3 shlex --- Simple lexical analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1322
24.3.1 shlex Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1324
24.3.2 Parsing Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1326
24.3.3 Improved Compatibility with Shells . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1326
25 Tk 图形用户界面 (GUI) 1329
25.1 tkinter --- Tcl/Tk 的 Python 接口 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1329
25.1.1 Tkinter 模块 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1330
25.1.2 Tkinter Life Preserver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1331
25.1.3 A (Very) Quick Look at Tcl/Tk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1332
25.1.4 Mapping Basic Tk into Tkinter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1333
25.1.5 How Tk and Tkinter are Related . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1333
25.1.6 Handy Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1334
25.1.7 File Handlers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1339
25.2 tkinter.colorchooser --- 颜色选择对话框 . . . . . . . . . . . . . . . . . . . . . . . . . 1340
25.3 tkinter.font --- Tkinter 字体封装 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1340
25.4 Tkinter 对话框 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1341
25.4.1 tkinter.simpledialog --- 标准 Tkinter 输入对话框 . . . . . . . . . . . . . . . 1341
25.4.2 tkinter.filedialog --- 文件选择对话框. . . . . . . . . . . . . . . . . . . . . . 1342
25.4.3 tkinter.commondialog --- 对话窗口模板 . . . . . . . . . . . . . . . . . . . . . 1344
25.5 tkinter.messagebox --- Tkinter 消息提示 . . . . . . . . . . . . . . . . . . . . . . . . . . 1344
25.6 tkinter.scrolledtext --- 滚动文字控件 . . . . . . . . . . . . . . . . . . . . . . . . . . 1345
25.7 tkinter.dnd --- 拖放操作支持 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1345
25.8 tkinter.ttk --- Tk 主题部件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1346
25.8.1 使用 Ttk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1346
25.8.2 Ttk 控件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1347
25.8.3 控件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1347
25.8.4 组合框 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1349
25.8.5 Spinbox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1350
25.8.6 笔记本 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1351
25.8.7 Progressbar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1353
25.8.8 Separator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1354
25.8.9 Sizegrip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1355
25.8.10 Treeview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1355
25.8.11 Ttk Styling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1360
25.9 tkinter.tix --- Extension widgets for Tk . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1364
25.9.1 Using Tix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1364
25.9.2 Tix Widgets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1365
xv
25.9.3 Tix Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1367
25.10 IDLE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1368
25.10.1 目录 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1369
25.10.2 编辑和导航 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1372
25.10.3 启动和代码执行 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1375
25.10.4 帮助和偏好 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1378
25.11 其他图形用户界面(GUI)包 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1379
26 开发工具 1381
26.1 typing --- 类型提示支持 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1381
26.1.1 类型别名 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1382
26.1.2 NewType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1382
26.1.3 可调对象(Callable) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1383
26.1.4 泛型(Generic) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1384
26.1.5 用户定义的泛型类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1384
26.1.6 Any 类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1386
26.1.7 名义子类型 vs 结构子类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1387
26.1.8 模块内容 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1387
26.2 pydoc --- 文档生成器和在线帮助系统 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1403
26.3 Python Development Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1404
26.4 Effects of the Python Development Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1405
26.5 ResourceWarning Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1406
26.6 Bad file descriptor error example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1407
26.7 doctest --- 测试交互性的 Python 示例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1407
26.7.1 简单用法:检查 Docstrings 中的示例 . . . . . . . . . . . . . . . . . . . . . . . . . . 1409
26.7.2 Simple Usage: Checking Examples in a Text File . . . . . . . . . . . . . . . . . . . . . . 1410
26.7.3 How It Works . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1411
26.7.4 Basic API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1418
26.7.5 Unittest API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1419
26.7.6 Advanced API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1421
26.7.7 调试 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1426
26.7.8 Soapbox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1428
26.8 unittest --- 单元测试框架 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1429
26.8.1 基本实例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1430
26.8.2 命令行界面 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1431
26.8.3 探索性测试 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1432
26.8.4 组织你的测试代码 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1433
26.8.5 复用已有的测试代码 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1435
26.8.6
跳过测试与预计的失败
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1435
26.8.7 Distinguishing test iterations using subtests . . . . . . . . . . . . . . . . . . . . . . . . . 1437
26.8.8 类与函数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1438
26.8.9 Class and Module Fixtures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1456
26.8.10 Signal Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1457
26.9 unittest.mock --- mock 对象库 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1458
26.9.1 快速上手 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1458
26.9.2 Mock 类 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1460
26.9.3 The patchers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1475
26.9.4 MagicMock and magic method support . . . . . . . . . . . . . . . . . . . . . . . . . . . 1484
26.9.5 Helpers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1487
26.10 unittest.mock 上手指南 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1495
26.10.1 使用 mock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1495
26.10.2 Patch Decorators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1500
26.10.3 Further Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1502
26.11 2to3 - 自动将 Python 2 代码转为 Python 3 代码 . . . . . . . . . . . . . . . . . . . . . . . . . . 1514
26.11.1 使用 2to3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1515
26.11.2 修复器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1516
26.11.3 lib2to3 ——2to3 支持库 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1519
26.12 test --- Python 回归测试包 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1520
xvi
26.12.1 Writing Unit Tests for the test package . . . . . . . . . . . . . . . . . . . . . . . . . . 1520
26.12.2 Running tests using the command-line interface . . . . . . . . . . . . . . . . . . . . . . 1522
26.13 test.support --- Utilities for the Python test suite . . . . . . . . . . . . . . . . . . . . . . . . 1522
26.14 test.support.socket_helper --- Utilities for socket tests . . . . . . . . . . . . . . . . . 1534
26.15 test.support.script_helper --- Utilities for the Python execution tests . . . . . . . . . 1535
26.16 test.support.bytecode_helper --- Support tools for testing correct bytecode generation 1536
27 调试和分析 1537
27.1 审计事件表 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1537
27.2 bdb --- Debugger framework . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1541
27.3 faulthandler --- Dump the Python traceback . . . . . . . . . . . . . . . . . . . . . . . . . . 1545
27.3.1 Dumping the traceback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1545
27.3.2 Fault handler state . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1545
27.3.3 Dumping the tracebacks after a timeout . . . . . . . . . . . . . . . . . . . . . . . . . . . 1546
27.3.4 Dumping the traceback on a user signal . . . . . . . . . . . . . . . . . . . . . . . . . . . 1546
27.3.5 Issue with file descriptors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1546
27.3.6 示例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1547
27.4 pdb --- Python 的调试器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1547
27.4.1 调试器命令 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1549
27.5 Python Profilers 分析器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1552
27.5.1 profile 分析器简介 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1553
27.5.2 实时用户手册 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1553
27.5.3 profile 和 cProfile 模块参考 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1555
27.5.4 Stats 类 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1556
27.5.5 什么是确定性性能分析? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1558
27.5.6 局限性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1559
27.5.7 准确估量 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1559
27.5.8 使用自定义计时器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1560
27.6 timeit --- 测量小代码片段的执行时间 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1560
27.6.1 基本示例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1560
27.6.2 Python 接口 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1561
27.6.3 命令行界面 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1562
27.6.4 示例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1563
27.7 trace --- 跟踪 Python 语句执行 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1565
27.7.1 Command-Line Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1565
27.7.2 编程接口 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1566
27.8 tracemalloc --- 跟踪内存分配 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1567
27.8.1 示例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1568
27.8.2 API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1572
28 软件打包和分发 1579
28.1 distutils --- 构建和安装 Python 模块 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1579
28.2 ensurepip --- Bootstrapping the pip installer . . . . . . . . . . . . . . . . . . . . . . . . . . 1580
28.2.1 Command line interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1580
28.2.2 Module API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1581
28.3 venv --- 创建虚拟环境 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1581
28.3.1 创建虚拟环境 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1582
28.3.2 API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1584
28.3.3 一个扩展 EnvBuilder 的例子 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1586
28.4 zipapp --- Manage executable Python zip archives . . . . . . . . . . . . . . . . . . . . . . . . . 1589
28.4.1 Basic Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1590
28.4.2 命令行接口 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1590
28.4.3 Python API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1591
28.4.4
示例
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1592
28.4.5 Specifying the Interpreter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1592
28.4.6 Creating Standalone Applications with zipapp . . . . . . . . . . . . . . . . . . . . . . . 1593
28.4.7 The Python Zip Application Archive Format . . . . . . . . . . . . . . . . . . . . . . . . 1595
xvii
29 Python 运行时服务 1597
29.1 sys --- 系统相关的参数和函数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1597
29.2 sysconfig --- Provide access to Python’s configuration information . . . . . . . . . . . . . . . 1614
29.2.1 配置变量 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1614
29.2.2 安装路径 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1614
29.2.3 其他功能 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1616
29.2.4 Using sysconfig as a script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1616
29.3 builtins --- 内建对象 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1617
29.4 __main__ --- 顶层脚本环境 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1618
29.5 warnings --- Warning control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1618
29.5.1 警告类别 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1619
29.5.2 The Warnings Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1619
29.5.3 暂时禁止警告 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1621
29.5.4 测试警告 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1622
29.5.5 Updating Code For New Versions of Dependencies . . . . . . . . . . . . . . . . . . . . . 1622
29.5.6 Available Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1623
29.5.7 Available Context Managers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1624
29.6
dataclasses
---
数据类
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1624
29.6.1 模块级装饰器、类和函数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1625
29.6.2 初始化后处理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1629
29.6.3 类变量 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1629
29.6.4 仅初始化变量 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1629
29.6.5 冻结的实例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1630
29.6.6 继承 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1630
29.6.7 默认工厂函数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1630
29.6.8 可变的默认值 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1630
29.6.9 异常 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1631
29.7 contextlib --- 为 with 语句上下文提供的工具 . . . . . . . . . . . . . . . . . . . . . . . . 1631
29.7.1 工具 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1632
29.7.2 例子和配方 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1638
29.7.3 Single use, reusable and reentrant context managers . . . . . . . . . . . . . . . . . . . . 1641
29.8 abc --- 抽象基类 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1643
29.9 atexit --- 退出处理器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1647
29.9.1 atexit 示例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1648
29.10 traceback --- 打印或检索堆栈回溯 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1648
29.10.1 TracebackException Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1650
29.10.2 StackSummary Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1651
29.10.3 FrameSummary Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1652
29.10.4 Traceback Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1652
29.11 __future__ --- Future 语句定义 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1654
29.12 gc --- 垃圾回收器接口 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1655
29.13 inspect --- 检查对象 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1658
29.13.1 类型和成员 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1659
29.13.2 Retrieving source code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1662
29.13.3 Introspecting callables with the Signature object . . . . . . . . . . . . . . . . . . . . . . 1663
29.13.4 类与函数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1667
29.13.5 The interpreter stack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1669
29.13.6 Fetching attributes statically . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1670
29.13.7 Current State of Generators and Coroutines . . . . . . . . . . . . . . . . . . . . . . . . . 1671
29.13.8 Code Objects Bit Flags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1672
29.13.9 命令行界面 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1673
29.14 site ——指定域的配置钩子 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1673
29.14.1 Readline configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1674
29.14.2 模块内容 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1675
29.14.3 命令行界面 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1676
30 自定义 Python 解释器 1677
30.1 code --- 解释器基类 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1677
xviii
剩余2017页未读,继续阅读
2010-10-30 上传
2021-04-15 上传
185 浏览量
2008-09-04 上传
2022-11-18 上传
2021-06-30 上传
钱玉璞
- 粉丝: 0
- 资源: 13
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- Angular实现MarcHayek简历展示应用教程
- Crossbow Spot最新更新 - 获取Chrome扩展新闻
- 量子管道网络优化与Python实现
- Debian系统中APT缓存维护工具的使用方法与实践
- Python模块AccessControl的Windows64位安装文件介绍
- 掌握最新*** Fisher资讯,使用Google Chrome扩展
- Ember应用程序开发流程与环境配置指南
- EZPCOpenSDK_v5.1.2_build***版本更新详情
- Postcode-Finder:利用JavaScript和Google Geocode API实现
- AWS商业交易监控器:航线行为分析与营销策略制定
- AccessControl-4.0b6压缩包详细使用教程
- Python编程实践与技巧汇总
- 使用Sikuli和Python打造颜色求解器项目
- .Net基础视频教程:掌握GDI绘图技术
- 深入理解数据结构与JavaScript实践项目
- 双子座在线裁判系统:提高编程竞赛效率
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功