2022年2月13日 星期日

Python 說明文件內容

 Python 說明文件內容

Python 有什麼新功能?

Python 3.10 有什麼新功能

摘要 -- 发布重点

新的特性

带圆括号的上下文管理器

更清楚的错误消息

SyntaxErrors

IndentationErrors

AttributeErrors

NameErrors

PEP 626:在调试和其他工具中使用精确的行号

PEP 634:结构化模式匹配

语法与操作

声明性方式

简单模式:匹配一个字面值

无通配符的行为

带有字面值和变量的模式

模式和类

带有位置参数的模式

嵌套模式

复杂模式和通配符

约束项

其他关键特性

可选的 EncodingWarning 和 encoding="locale" 选项

有关类型提示的新增特性

PEP 604: 新的类型联合运算符

PEP 612: 形参规格变量

PEP 613: 类型别名

PEP 647: 用户自定义的类型保护器

其他语言特性修改

新增模块

改进的模块

asyncio

argparse

array

asynchat, asyncore, smtpd

base64

bdb

bisect

codecs

collections.abc

contextlib

curses

dataclasses

__slots__

Keyword-only fields

distutils

doctest

encodings

fileinput

faulthandler

gc

glob

hashlib

hmac

IDLE 与 idlelib

importlib.metadata

inspect

linecache

os

os.path

pathlib

platform

pprint

py_compile

pyclbr

shelve

statistics

site

socket

ssl

sqlite3

sys

_thread

threading

traceback

types

typing

unittest

urllib.parse

xml

zipimport

性能优化

弃用

移除

移植到 Python 3.10

Python 语法中的变化

Python API 的变化

C API 的变化

CPython 字节码的改变

编译版的变化

C API 的变化

PEP 652:稳定版 ABI 的维护

新的特性

移植到 Python 3.10

弃用

移除

Python 3.9 有什麼新功能

摘要 -- 发布重点

请检查代码中的 DeprecationWarning。

新的特性

字典合并与更新运算符

新增用于移除前缀和后缀的字符串方法

标准多项集中的类型标注泛型

新的解析器

其他语言特性修改

新模組

zoneinfo

graphlib

改进的模块

ast

asyncio

compileall

concurrent.futures

curses

datetime

distutils

fcntl

ftplib

gc

hashlib

http

IDLE 与 idlelib

imaplib

importlib

inspect

ipaddress

math

multiprocessing

nntplib

os

pathlib

pdb

poplib

pprint

pydoc

random

signal

smtplib

socket

time

sys

tracemalloc

typing

unicodedata

venv

xml

性能优化

弃用

移除

移植到 Python 3.9

Python API 的变化

C API 的变化

CPython 字节码的改变

构建的改变

C API 的改变

新的特性

移植到 Python 3.9

移除

Python 3.9.1 中的重要变化

typing

macOS 11.0 (Big Sur) 与 Apple Silicon Mac 支持

Python 3.9.2 中的重要变化

collections.abc

urllib.parse

Python 3.8 有什麼新功能

摘要 -- 发布重点

新的特性

赋值表达式

仅限位置形参

用于已编译字节码文件的并行文件系统缓存

调试构建使用与发布构建相同的 ABI

f-字符串支持 = 用于自动记录表达式和调试文档

PEP 578: Python 运行时审核钩子

PEP 587: Python 初始化配置

PEP 590: Vectorcall: 用于 CPython 的快速调用协议

具有外部数据缓冲区的 pickle 协议 5

其他语言特性修改

新增模块

改进的模块

ast

asyncio

builtins

collections

cProfile

csv

curses

ctypes

datetime

functools

gc

gettext

gzip

IDLE 与 idlelib

inspect

io

itertools

json.tool

logging

math

mmap

multiprocessing

os

os.path

pathlib

pickle

plistlib

pprint

py_compile

shlex

shutil

socket

ssl

statistics

sys

tarfile

threading

tokenize

tkinter

time

typing

unicodedata

unittest

venv

weakref

xml

xmlrpc

性能优化

构建和 C API 的改变

弃用

API 与特性的移除

移植到 Python 3.8

Python 行为的改变

Python API 的变化

C API 的变化

CPython 字节码的改变

演示和工具

Python 3.8.1 中的重要变化

Python 3.8.8 中的重要变化

Python 3.8.12 中的重要变化

Python 3.7 有什麼新功能

摘要 - 发布重点

新的特性

PEP 563:延迟的标注求值

PEP 538: 传统 C 区域强制转换

PEP 540: 强制 UTF-8 运行时模式

PEP 553: 内置的 breakpoint()

PEP 539: 用于线程局部存储的新 C API

PEP 562: 定制对模块属性的访问

PEP 564: 具有纳秒级精度的新时间函数

PEP 565: 在 __main__ 中显示 DeprecationWarning

PEP 560: 对 typing 模块和泛型类型的核心支持

PEP 552: 基于哈希值的 .pyc 文件

PEP 545:Python 文件翻譯

Python 开发模式 (-X dev)

其他语言特性修改

新模組

contextvars

dataclasses

importlib.resources

改进的模块

argparse

asyncio

binascii

calendar

collections

compileall

concurrent.futures

contextlib

cProfile

crypt

datetime

dbm

decimal

dis

distutils

enum

functools

gc

hmac

http.client

http.server

idlelib 与 IDLE

importlib

io

ipaddress

itertools

locale

logging

math

mimetypes

msilib

multiprocessing

os

pathlib

pdb

py_compile

pydoc

queue

re

signal

socket

socketserver

sqlite3

ssl

string

subprocess

sys

time

tkinter

tracemalloc

types

unicodedata

unittest

unittest.mock

urllib.parse

uu

uuid

warnings

xml.etree

xmlrpc.server

zipapp

zipfile

C API 的改变

构建的改变

性能优化

其他 CPython 实现的改变

已弃用的 Python 行为

已弃用的 Python 模块、函数和方法

aifc

asyncio

collections

dbm

enum

gettext

importlib

locale

macpath

threading

socket

ssl

sunau

sys

wave

已弃用的 C API 函数和类型

平台支持的移除

API 与特性的移除

移除的模块

Windows 专属的改变

移植到 Python 3.7

Python 行为的更改

Python API 的变化

C API 的变化

CPython 字节码的改变

Windows 专属的改变

其他 CPython 实现的改变

Python 3.7.1 中的重要变化

Python 3.7.2 中的重要变化

Python 3.7.6 中的重要变化

Python 3.7.10 中的重要变化

Python 3.6 有什麼新功能

摘要 -- 发布重点

新的特性

PEP 498: 格式化字符串字面值

PEP 526: 变量标注的语法

PEP 515: 数字字面值中的下划线。

PEP 525: 异步生成器

PEP 530: 异步推导式

PEP 487: 更简单的自定义类创建

PEP 487: 描述器协议的增强

PEP 519: 添加文件系统路径协议

PEP 495: 消除本地时间的歧义

PEP 529: 将Windows文件系统编码更改为UTF-8

PEP 528: 将Windows控制台编码更改为UTF-8

PEP 520: 保留类属性定义顺序

PEP 468: 保留关键字参数顺序

新的 dict 实现

PEP 523: 向CPython 添加框架评估API

PYTHONMALLOC 环境变量

DTrace 和 SystemTap 探测支持

其他语言特性修改

新模組

secrets

改进的模块

array

ast

asyncio

binascii

cmath

collections

concurrent.futures

contextlib

datetime

decimal

distutils

email

encodings

enum

faulthandler

fileinput

hashlib

http.client

idlelib 与 IDLE

importlib

inspect

json

logging

math

multiprocessing

os

pathlib

pdb

pickle

pickletools

pydoc

random

re

readline

rlcompleter

shlex

site

sqlite3

socket

socketserver

ssl

statistics

struct

subprocess

sys

telnetlib

time

timeit

tkinter

traceback

tracemalloc

typing

unicodedata

unittest.mock

urllib.request

urllib.robotparser

venv

warnings

winreg

winsound

xmlrpc.client

zipfile

zlib

性能优化

构建和 C API 的改变

其他改进

弃用

新關鍵字

已弃用的 Python 行为

已弃用的 Python 模块、函数和方法

asynchat

asyncore

dbm

distutils

grp

importlib

os

re

ssl

tkinter

venv

已弃用的 C API 函数和类型

弃用的构建选项

移除

API 与特性的移除

移植到Python 3.6

 'python' 命令行为的变化

Python API 的变化

C API 的变化

CPython 字节码的改变

Python 3.6.2 中的重要变化

New make regen-all build target

Removal of make touch build target

Python 3.6.4 中的重要变化

Python 3.6.5 中的重要变化

Python 3.6.7 中的重要变化

Python 3.6.10 中的重要变化

Notable changes in Python 3.6.13

Python 3.4 有什麼新功能

摘要 -- 发布重点

新的特性

PEP 492 - 使用 async 和 await 语法实现协程

PEP 465 - 用于矩阵乘法的专用中缀运算符

PEP 448 - Additional Unpacking Generalizations

PEP 461 - percent formatting support for bytes and bytearray

PEP 484 - 类型提示

PEP 471 - os.scandir() function -- a better and faster directory iterator

PEP 475: Retry system calls failing with EINTR

PEP 479: Change StopIteration handling inside generators

PEP 485: A function for testing approximate equality

PEP 486: Make the Python Launcher aware of virtual environments

PEP 488: Elimination of PYO files

PEP 489: Multi-phase extension module initialization

其他语言特性修改

新增模块

typing

zipapp

改进的模块

argparse

asyncio

bz2

cgi

cmath

code

collections

collections.abc

compileall

concurrent.futures

configparser

contextlib

csv

curses

dbm

difflib

distutils

doctest

email

enum

faulthandler

functools

glob

gzip

heapq

http

http.client

idlelib 与 IDLE

imaplib

imghdr

importlib

inspect

io

ipaddress

json

linecache

locale

logging

lzma

math

multiprocessing

operator

os

pathlib

pickle

poplib

re

readline

selectors

shutil

signal

smtpd

smtplib

sndhdr

socket

ssl

内存 BIO 支持

Application-Layer Protocol Negotiation Support

Other Changes

sqlite3

subprocess

sys

sysconfig

tarfile

threading

time

timeit

tkinter

traceback

types

unicodedata

unittest

unittest.mock

urllib

wsgiref

xmlrpc

xml.sax

zipfile

其他模块级更改

性能优化

构建和 C API 的改变

弃用

新关键字

已弃用的 Python 行为

不支持的操作系统

已弃用的 Python 模块、函数和方法

移除

API 与特性的移除

移植到Python 3.5

Python 行为的改变

Python API 的变化

C API 的变化

Python 3.5.4 的显著变化

New make regen-all build target

Removal of make touch build target

Python 3.4 有什麼新功能

摘要 - 发布重点

新的特性

PEP 453: Explicit Bootstrapping of PIP in Python Installations

Bootstrapping pip By Default

文档更改

PEP 446: Newly Created File Descriptors Are Non-Inheritable

Improvements to Codec Handling

PEP 451: A ModuleSpec Type for the Import System

其他语言特性修改

新模組

asyncio

ensurepip

enum

pathlib

selectors

statistics

tracemalloc

改进的模块

abc

aifc

argparse

audioop

base64

collections

colorsys

contextlib

dbm

dis

doctest

email

filecmp

functools

gc

glob

hashlib

hmac

html

http

idlelib 与 IDLE

importlib

inspect

ipaddress

logging

marshal

mmap

multiprocessing

operator

os

pdb

pickle

plistlib

poplib

pprint

pty

pydoc

re

resource

select

shelve

shutil

smtpd

smtplib

socket

sqlite3

ssl

stat

struct

subprocess

sunau

sys

tarfile

textwrap

threading

traceback

types

urllib

unittest

venv

wave

weakref

xml.etree

zipfile

CPython Implementation Changes

PEP 445: Customization of CPython Memory Allocators

PEP 442: Safe Object Finalization

PEP 456: Secure and Interchangeable Hash Algorithm

PEP 436: Argument Clinic

Other Build and C API Changes

其他改进

Significant Optimizations

弃用

Deprecations in the Python API

Deprecated Features

移除

不再支持的操作系统

API 与特性的移除

Code Cleanups

移植到 Python 3.4

 'python' 命令行为的变化

Python API 的变化

C API 的变化

3.4.3 的变化

PEP 476: Enabling certificate verification by default for stdlib http clients

Python 3.3 有什麼新功能

摘要 -- 发布重点

PEP 405: 虚拟环境

PEP 420: 隐式命名空间包

PEP 3118: 新的内存视图实现和缓冲协议文档

相关特性

API changes

PEP 393: 灵活的字符串表示

Functionality

Performance and resource usage

PEP 397: 适用于Windows的Python启动器

PEP 3151: 重写 OS 和 IO 异常的层次结构

PEP 380: 委托给子生成器的语法

PEP 409: 清除异常上下文

PEP 414: 显式的Unicode文本

PEP 3155: 类和函数的限定名称

PEP 412: Key-Sharing Dictionary

PEP 362: 函数签名对象

PEP 421: 添加 sys.implementation

SimpleNamespace

Using importlib as the Implementation of Import

New APIs

Visible Changes

其他语言特性修改

A Finer-Grained Import Lock

Builtin functions and types

新模組

faulthandler

ipaddress

lzma

改进的模块

abc

array

base64

binascii

bz2

codecs

collections

contextlib

crypt

curses

datetime

decimal

相关特性

API changes

email

Policy Framework

Provisional Policy with New Header API

Other API Changes

ftplib

functools

gc

hmac

http

html

imaplib

inspect

io

itertools

logging

math

mmap

multiprocessing

nntplib

os

pdb

pickle

pydoc

re

sched

select

shlex

shutil

signal

smtpd

smtplib

socket

socketserver

sqlite3

ssl

stat

struct

subprocess

sys

tarfile

tempfile

textwrap

threading

time

types

unittest

urllib

webbrowser

xml.etree.ElementTree

zlib

性能优化

构建和 C API 的改变

弃用

不支持的操作系统

已弃用的 Python 模块、函数和方法

已弃用的 C API 函数和类型

弃用的功能

移植到 Python 3.3

Porting Python code

Porting C code

Building C extensions

Command Line Switch Changes

Python 3.2 有什麼新功能

PEP 384: 定义稳定的ABI

PEP 389: Argparse 命令行解析模块

PEP 391: 基于字典的日志配置

PEP 3148: concurrent.futures 模块

PEP 3147: PYC 仓库目录

PEP 3149: ABI Version Tagged .so Files

PEP 3333: Python Web服务器网关接口v1.0.1

其他语言特性修改

新增,改进和弃用的模块

email

elementtree

functools

itertools

collections

threading

datetime 和 time

math

abc

io

reprlib

logging

csv

contextlib

decimal and fractions

ftp

popen

select

gzip 和 zipfile

tarfile

hashlib

ast

os

shutil

sqlite3

html

socket

ssl

nntp

certificates

imaplib

http.client

unittest

random

poplib

asyncore

tempfile

inspect

pydoc

dis

dbm

ctypes

site

sysconfig

pdb

configparser

urllib.parse

mailbox

turtledemo

多线程

性能优化

Unicode

编解码器

文件

IDLE

代码库

构建和 C API 的改变

移植到 Python 3.2

Python 3.1 有什麼新功能

PEP 372: 有序字典

PEP 378: 千位分隔符的格式说明符

其他语言特性修改

新增,改进和弃用的模块

性能优化

IDLE

构建和 C API 的改变

移植到 Python 3.1

Python 3.0 有什麼新功能

常见的绊脚石

Print 是函数

Views And Iterators Instead Of Lists

Ordering Comparisons

整数

Text Vs. Data Instead Of Unicode Vs. 8-bit

语法变化概述

新语法

语法变化

移除的语法

Changes Already Present In Python 2.6

Library Changes

PEP 3101: A New Approach To String Formatting

Changes To Exceptions

Miscellaneous Other Changes

Operators And Special Methods

Builtins

构建和 C API 的改变

性能

移植到 Python 3.0

Python 2.7 有什麼新功能

Python 2.x的未来

Changes to the Handling of Deprecation Warnings

Python 3.1 Features

PEP 372: Adding an Ordered Dictionary to collections

PEP 378: 千位分隔符的格式说明符

PEP 389: The argparse Module for Parsing Command Lines

PEP 391: Dictionary-Based Configuration For Logging

PEP 3106: Dictionary Views

PEP 3137: The memoryview Object

其他语言特性修改

Interpreter Changes

性能优化

新增和改进的模块

新模块:importlib

新模块:sysconfig

ttk: Themed Widgets for Tk

更新的模块:unittest

更新的模块:ElementTree 1.3

构建和 C API 的改变

Capsule 对象

特定于 Windows 的更改:

特定于 Mac OS X 的更改:

特定于 FreeBSD 的更改:

Other Changes and Fixes

移植到 Python 2.7

New Features Added to Python 2.7 Maintenance Releases

Two new environment variables for debug mode

PEP 434: IDLE Enhancement Exception for All Branches

PEP 466: Network Security Enhancements for Python 2.7

PEP 477: Backport ensurepip (PEP 453) to Python 2.7

Bootstrapping pip By Default

文档更改

PEP 476: Enabling certificate verification by default for stdlib http clients

PEP 493:适用于Python 2.7 的 HTTPS 验证迁移工具

New make regen-all build target

Removal of make touch build target

致謝

Python 2.6 有什麼新功能

Python 3.0

开发过程的变化

New Issue Tracker: Roundup

新的文档格式:使用 Sphinx 的 reStructuredText

PEP 343: "with" 语句

Writing Context Managers

contextlib 模块

PEP 366: 从主模块显式相对导入

PEP 370: 分用户的 site-packages 目录

PEP 371: 多任务处理包

PEP 3101: 高级字符串格式

PEP 3105: print 改为函数

PEP 3110: 异常处理的变更

PEP 3112: 字节字面值

PEP 3116: 新 I/O 库

PEP 3118:修訂緩衝協定

PEP 3119: 抽象基类

PEP 3127: 整型文字支持和语法

PEP 3129: 类装饰器

PEP 3141: A Type Hierarchy for Numbers

fractions 模块

其他语言特性修改

性能优化

Interpreter Changes

新增和改进的模块

ast 模块

future_builtins 模块

The json module: JavaScript Object Notation

plistlib 模块:属性列表解析器

ctypes Enhancements

Improved SSL Support

Deprecations and Removals

构建和 C API 的改变

特定于 Windows 的更改:

特定于 Mac OS X 的更改:

特定于 IRIX 的更改:

移植到Python 2.6

致謝

Python 2.5 有什麼新功能

PEP 308: 条件表达式

PEP 309: 部分功能应用

PEP 314: Python软件包的元数据 v1.1

PEP 328: 绝对导入和相对导入

PEP 338: 将模块作为脚本执行

PEP 341: 统一 try/except/finally

PEP 342: 生成器的新特性

PEP 343: "with" 语句

Writing Context Managers

contextlib 模块

PEP 352: 异常作为新型的类

PEP 353: 使用ssize_t作为索引类型

PEP 357: '__index__' 方法

其他语言特性修改

交互解释器变更

性能优化

新增,改进和删除的模块

ctypes 套件

ElementTree 套件

hashlib 套件

sqlite3 套件

wsgiref 套件

构建和 C API 的改变

Port-Specific Changes

移植到Python 2.5

致謝

Python 2.4 有什麼新功能

PEP 218: 内置集合对象

PEP 237: 统一长整数和整数

PEP 289: 生成器表达式

PEP 292: Simpler String Substitutions

PEP 318: Decorators for Functions and Methods

PEP 322: 反向迭代

PEP 324: 新的子进程模块

PEP 327: 十进制数据类型

为什么需要十进制?

Decimal 型別

Context 型別

PEP 328: 多行导入

PEP 331: Locale-Independent Float/String Conversions

其他语言特性修改

性能优化

新增,改进和弃用的模块

cookielib

doctest

构建和 C API 的改变

Port-Specific Changes

移植到 Python 2.4

致謝

Python 2.3 有什麼新功能

PEP 218: A Standard Set Datatype

PEP 255: Simple Generators

PEP 263: Source Code Encodings

PEP 273: 从ZIP压缩包导入模块

PEP 277: Unicode file name support for Windows NT

PEP 278: 通用换行支持

PEP 279: enumerate()

PEP 282: logging 包

PEP 285: 布尔类型

PEP 293: Codec Error Handling Callbacks

PEP 301: Distutils的软件包索引和元数据

PEP 302: New Import Hooks

PEP 305: 逗号分隔文件

PEP 307: Pickle Enhancements

扩展切片

其他语言特性修改

String Changes

性能优化

新增,改进和弃用的模块

Date/Time 类型

optparse 模块

Pymalloc: A Specialized Object Allocator

构建和 C API 的改变

Port-Specific Changes

Other Changes and Fixes

移植到 Python 2.3

致謝

Python 2.2 有什麼新功能

簡介

PEPs 252 and 253: Type and Class Changes

Old and New Classes

Descriptors

Multiple Inheritance: The Diamond Rule

Attribute Access

Related Links

PEP 234: Iterators

PEP 255: Simple Generators

PEP 237: 统一长整数和整数

PEP 238: Changing the Division Operator

Unicode Changes

PEP 227: Nested Scopes

新增和改进的模块

Interpreter Changes and Fixes

Other Changes and Fixes

致謝

Python 2.1 有什麼新功能

簡介

PEP 227: Nested Scopes

PEP 236: __future__ Directives

PEP 207: Rich Comparisons

PEP 230: Warning Framework

PEP 229: New Build System

PEP 205: Weak References

PEP 232: Function Attributes

PEP 235: Importing Modules on Case-Insensitive Platforms

PEP 217: Interactive Display Hook

PEP 208: New Coercion Model

PEP 241: Metadata in Python Packages

新增和改进的模块

Other Changes and Fixes

致謝

Python 2.0 有什麼新功能

簡介

What About Python 1.6?

新开发流程

Unicode

串列綜合運算(List Comprehension)

Augmented Assignment

字符串的方法

Garbage Collection of Cycles

其他核心变化

Minor Language Changes

Changes to Built-in Functions

移植 Python 2.0

扩展/嵌入更改

Distutils:使模块易于安装

XML 模块

SAX2 Support

DOM Support

Relationship to PyXML

模組變更

新增模块

IDLE 改进

删除和弃用的模块

致謝

Changelog(更動日誌)

Python 下一版

核心与内置函数

文档

测试

构建

Windows

macOS

IDLE

C API

Python 3.10.2 final

核心与内置函数

文档

测试

构建

macOS

C API

Python 3.10.1 final

核心与内置函数

文档

测试

构建

Windows

macOS

IDLE

工具/示例

C API

Python 3.10.0 final

核心与内置函数

文档

测试

构建

IDLE

C API

Python 3.10.0 release candidate 2

安全性

核心与内置函数

文档

测试

Windows

macOS

Python 3.10.0 release candidate 1

安全性

核心与内置函数

文档

测试

Windows

macOS

工具/示例

C API

Python 3.10.0 beta 4

安全性

核心与内置函数

文档

测试

构建

Windows

C API

Python 3.10.0 beta 3

核心与内置函数

文档

测试

构建

IDLE

C API

Python 3.10.0 beta 2

安全性

核心与内置函数

文档

测试

构建

Windows

macOS

IDLE

工具/示例

C API

Python 3.10.0 beta 1

安全性

核心与内置函数

文档

测试

构建

Windows

macOS

IDLE

C API

Python 3.10.0 alpha 7

安全性

核心与内置函数

文档

测试

构建

Windows

IDLE

C API

Python 3.10.0 alpha 6

安全性

核心与内置函数

文档

测试

构建

Windows

macOS

IDLE

C API

Python 3.10.0 alpha 5

安全性

核心与内置函数

文档

测试

构建

Windows

macOS

IDLE

C API

Python 3.10.0 alpha 4

核心与内置函数

文档

测试

构建

macOS

工具/示例

C API

Python 3.10.0 alpha 3

安全性

核心与内置函数

文档

测试

构建

Windows

macOS

IDLE

工具/示例

C API

Python 3.10.0 alpha 2

安全性

核心与内置函数

文档

测试

构建

Windows

macOS

IDLE

C API

Python 3.10.0 alpha 1

安全性

核心与内置函数

文档

测试

构建

Windows

macOS

IDLE

C API

Python 3.9.0 beta 1

安全性

核心与内置函数

文档

测试

构建

Windows

macOS

工具/示例

C API

Python 3.9.0 alpha 6

安全性

核心与内置函数

文档

测试

构建

Windows

macOS

IDLE

工具/示例

C API

Python 3.9.0 alpha 5

安全性

核心与内置函数

文档

测试

构建

Windows

macOS

IDLE

工具/示例

C API

Python 3.9.0 alpha 4

安全性

核心与内置函数

文档

测试

构建

Windows

IDLE

C API

Python 3.9.0 alpha 3

核心与内置函数

文档

构建

IDLE

C API

Python 3.9.0 alpha 2

安全性

核心与内置函数

文档

测试

构建

Windows

macOS

IDLE

C API

Python 3.9.0 alpha 1

安全性

核心与内置函数

文档

测试

构建

Windows

macOS

IDLE

工具/示例

C API

Python 3.8.0 beta 1

安全性

核心与内置函数

文档

测试

构建

Windows

macOS

IDLE

工具/示例

C API

Python 3.8.0 alpha 4

安全性

核心与内置函数

文档

测试

构建

Windows

macOS

IDLE

工具/示例

C API

Python 3.8.0 alpha 3

安全性

核心与内置函数

文档

测试

构建

Windows

IDLE

工具/示例

C API

Python 3.8.0 alpha 2

核心与内置函数

文档

测试

Windows

IDLE

Python 3.8.0 alpha 1

安全性

核心与内置函数

文档

测试

构建

Windows

macOS

IDLE

工具/示例

C API

Python 3.7.0 正式版

C API

Python 3.7.0 rc1

核心与内置函数

文档

构建

Windows

IDLE

Python 3.7.0 beta 5

核心与内置函数

文档

测试

构建

macOS

IDLE

Python 3.7.0 beta 4

核心与内置函数

文档

测试

构建

Windows

macOS

IDLE

工具/示例

Python 3.7.0 beta 3

安全性

核心与内置函数

文档

测试

构建

Windows

macOS

IDLE

工具/示例

C API

Python 3.7.0 beta 2

安全性

核心与内置函数

文档

测试

构建

Windows

macOS

IDLE

工具/示例

Python 3.7.0 beta 1

核心与内置函数

文档

测试

构建

Windows

macOS

C API

Python 3.7.0 alpha 4

核心与内置函数

文档

测试

Windows

工具/示例

C API

Python 3.7.0 alpha 3

核心与内置函数

文档

测试

构建

Windows

macOS

IDLE

工具/示例

C API

Python 3.7.0 alpha 2

核心与内置函数

文档

构建

IDLE

C API

Python 3.7.0 alpha 1

安全性

核心与内置函数

文档

测试

构建

Windows

IDLE

工具/示例

C API

Python 3.6.6 正式版

Python 3.6.6 rc1

核心与内置函数

文档

测试

构建

Windows

macOS

IDLE

工具/示例

C API

Python 3.6.5 正式版

测试

构建

Python 3.6.5 rc1

安全性

核心与内置函数

文档

测试

构建

Windows

macOS

IDLE

工具/示例

C API

Python 3.6.4 正式版

Python 3.6.4 rc1

核心与内置函数

文档

测试

构建

Windows

macOS

IDLE

工具/示例

C API

Python 3.6.3 正式版

构建

Python 3.6.3 rc1

安全性

核心与内置函数

文档

测试

构建

Windows

IDLE

工具/示例

Python 3.6.2 正式版

Python 3.6.2 rc2

安全性

Python 3.6.2 rc1

核心与内置函数

安全性

IDLE

C API

构建

文档

工具/示例

测试

Windows

Python 3.6.1 正式版

核心与内置函数

构建

Python 3.6.1 rc1

核心与内置函数

IDLE

Windows

C API

文档

测试

构建

Python 3.6.0 正式版

Python 3.6.0 rc2

核心与内置函数

工具/示例

Windows

构建

Python 3.6.0 rc1

核心与内置函数

C API

文档

工具/示例

Python 3.6.0 beta 4

核心与内置函数

文档

测试

构建

Python 3.6.0 beta 3

核心与内置函数

Windows

构建

测试

Python 3.6.0 beta 2

核心与内置函数

Windows

C API

构建

测试

Python 3.6.0 beta 1

核心与内置函数

IDLE

C API

测试

构建

工具/示例

Windows

Python 3.6.0 alpha 4

核心与内置函数

IDLE

测试

Windows

构建

Python 3.6.0 alpha 3

核心与内置函数

安全性

安全性

IDLE

C API

构建

工具/示例

文档

测试

Python 3.6.0 alpha 2

核心与内置函数

安全性

安全性

IDLE

文档

测试

Windows

构建

Windows

C API

工具/示例

Python 3.6.0 alpha 1

核心与内置函数

安全性

安全性

安全性

IDLE

文档

测试

构建

Windows

工具/示例

C API

Python 3.5.5 正式版

Python 3.5.5 rc1

安全性

核心与内置函数

Python 3.5.4 正式版

Python 3.5.4 rc1

安全性

核心与内置函数

文档

测试

构建

Windows

C API

Python 3.5.3 正式版

Python 3.5.3 rc1

核心与内置函数

安全性

安全性

IDLE

C API

文档

测试

工具/示例

Windows

构建

Python 3.5.2 正式版

核心与内置函数

测试

IDLE

Python 3.5.2 rc1

核心与内置函数

安全性

安全性

安全性

安全性

安全性

IDLE

文档

测试

构建

Windows

工具/示例

Windows

Python 3.5.1 正式版

核心与内置函数

Windows

Python 3.5.1 rc1

核心与内置函数

IDLE

文档

测试

构建

Windows

工具/示例

Python 3.5.0 正式版

构建

Python 3.5.0 rc4

构建

Python 3.5.0 rc3

核心与内置函数

Python 3.5.0 rc2

核心与内置函数

Python 3.5.0 rc1

核心与内置函数

IDLE

文档

测试

Python 3.5.0 beta 4

核心与内置函数

构建

Python 3.5.0 beta 3

核心与内置函数

测试

文档

构建

Python 3.5.0 beta 2

核心与内置函数

Python 3.5.0 beta 1

核心与内置函数

IDLE

测试

文档

工具/示例

Python 3.5.0 alpha 4

核心与内置函数

构建

测试

工具/示例

C API

Python 3.5.0 alpha 3

核心与内置函数

构建

测试

工具/示例

Python 3.5.0 alpha 2

核心与内置函数

构建

C API

Windows

Python 3.5.0 alpha 1

核心与内置函数

IDLE

构建

C API

文档

测试

工具/示例

Windows

Python 教學

1. 淺嘗滋味

2. 使用 Python 直譯器

2.1. 啟動直譯器

2.1.1. 傳遞引數

2.1.2. 互動模式

2.2. 直譯器與它的環境

2.2.1. 原始碼的字元編碼 (encoding)

3. 一個非正式的 Python 簡介

3.1. 把 Python 當作計算機使用

3.1.1. 數字 (Number)

3.1.2. 字串 (String)

3.1.3. List(串列)

3.2. 初探程式設計的前幾步

4. 深入了解流程控制

4.1. if 陳述式

4.2. for 陳述式

4.3. range() 函式

4.4. 迴圈內的 break 和 continue 陳述式及 else 子句

4.5. pass 陳述式

4.6. match 陳述式

4.7. 定義函式 (function)

4.8. 深入了解函式定義

4.8.1. 預設引數值

4.8.2. 關鍵字引數

4.8.3. 特殊參數

4.8.3.1. 位置或關鍵字引數 (Positional-or-Keyword Arguments)

4.8.3.2. 僅限位置參數 (Positional-Only Parameters)

4.8.3.3. 僅限關鍵字引數 (Keyword-Only Arguments)

4.8.3.4. 函式範例

4.8.3.5. 回顧

4.8.4. 任意引數列表 (Arbitrary Argument Lists)

4.8.5. 拆解引數列表(Unpacking Argument Lists)

4.8.6. Lambda 運算式

4.8.7. 說明文件字串 (Documentation Strings)

4.8.8. 函式註釋 (Function Annotations)

4.9. 間奏曲:程式碼風格 (Coding Style)

5. 資料結構

5.1. 進一步了解 List(串列)

5.1.1. 將 List 作為 Stack(堆疊)使用

5.1.2. 將 List 作為 Queue(佇列)使用

5.1.3. List Comprehensions(串列綜合運算)

5.1.4. 巢狀的 List Comprehensions

5.2. del 陳述式

5.3. Tuples 和序列 (Sequences)

5.4. 集合 (Sets)

5.5. 字典(Dictionary)

5.6. 迴圈技巧

5.7. 深入了解條件 (Condition)

5.8. 序列和其他資料類型之比較

6. 模組 (Module)

6.1. 深入了解模組

6.1.1. 把模組當作腳本執行

6.1.2. 模組的搜尋路徑

6.1.3. 「編譯」Python 檔案

6.2. 標準模組

6.3. dir() 函式

6.4. 套件 (Package)

6.4.1. 從套件中 import *

6.4.2. 套件內引用

6.4.3. 多目錄中的套件

7. 輸入和輸出

7.1. 更華麗的輸出格式

7.1.1. 格式化的字串文本 (Formatted String Literals)

7.1.2. 字串的 format() method

7.1.3. 手動格式化字串

7.1.4. 格式化字串的舊方法

7.2. 讀寫檔案

7.2.1. 檔案物件的 method

7.2.2. 使用 json 儲存結構化資料

8. 錯誤和例外

8.1. 語法錯誤 (Syntax Error)

8.2. 例外 (Exception)

8.3. 處理例外

8.4. 引發例外

8.5. 例外鏈接 (Exception Chaining)

8.6. 使用者自定的例外

8.7. 定義清理動作

8.8. 預定義的清理動作

9. Class(類別)

9.1. 關於名稱與物件的一段話

9.2. Python 作用域 (Scope) 及命名空間 (Namespace)

9.2.1. 作用域和命名空間的範例

9.3. 初見 class

9.3.1. Class definition(類別定義)語法

9.3.2. Class 物件

9.3.3. 實例物件

9.3.4. Method 物件

9.3.5. Class 及實例變數

9.4. 隨意的備註

9.5. 繼承 (Inheritance)

9.5.1. 多重繼承

9.6. 私有變數

9.7. 補充說明

9.8. 疊代器 (Iterator)

9.9. 產生器 (Generator)

9.10. 產生器運算式

10. Python 標準函式庫概覽

10.1. 作業系統介面

10.2. 檔案之萬用字元 (File Wildcards)

10.3. 命令列引數

10.4. 錯誤輸出重新導向與程式終止

10.5. 字串樣式比對

10.6. 數學相關

10.7. 網路存取

10.8. 日期與時間

10.9. 資料壓縮

10.10. 效能量測

10.11. 品質控管

10.12. 標準模組庫

11. Python 標準函式庫概覽——第二部份

11.1. 輸出格式化 (Output Formatting)

11.2. 模板化 (Templating)

11.3. 二進制資料記錄編排 (Binary Data Record Layouts)

11.4. 多執行緒 (Multi-threading)

11.5. 日誌記錄 (Logging)

11.6. 弱引用 (Weak References)

11.7. 使用於 List 的工具

11.8. 十進制 (Decimal) 浮點數運算

12. 虛擬環境與套件

12.1. 簡介

12.2. 建立虛擬環境

12.3. 用 pip 管理套件

13. 現在可以來學習些什麼?

14. 互動式輸入編輯和歷史記錄替換

14.1. Tab 鍵自動完成 (Tab Completion) 和歷史記錄編輯 (History Editing)

14.2. 互動式直譯器的替代方案

15. 浮點數運算:問題與限制

15.1. 表示法誤差 (Representation Error)

16. 附錄

16.1. 互動模式

16.1.1. 錯誤處理

16.1.2. 可執行的 Python 腳本

16.1.3. 互動式啟動檔案

16.1.4. 客製化模組

Python 的設置與使用

1. 命令行与环境

1.1. 命令行

1.1.1. 接口选项

1.1.2. 通用选项

1.1.3. 其他选项

1.1.4. 不应当使用的选项

1.2. 环境变量

1.2.1. 调试模式变量

2. 在类Unix环境下使用Python

2.1. 获得并安装Python的最新版本

2.1.1. 在Linux中

2.1.2. 在FreeBSD和OpenBSD上

2.1.3. 在OpenSolaris系统上

2.2. 构建Python

2.3. 与Python相关的路径和文件

2.4. 杂项

2.5. 自定义 OpenSSL

3. 配置 Python

3.1. 配置参数

3.1.1. 常用参数

3.1.2. 安装时的选项

3.1.3. 性能选项

3.1.4. Python 调试级编译

3.1.5. 调试选项

3.1.6. 链接器选项

3.1.7. 库选项

3.1.8. 安全性选项

3.1.9. macOS 选项

3.2. Python 构建系统

3.2.1. 构建系统的主要文件

3.2.2. 主要构建步骤

3.2.3. 主要 Makefile 目标

3.2.4. C 扩展

3.3. 编译器和链接器的标志

3.3.1. 预处理器的标志

3.3.2. 编译器标志

3.3.3. 链接器标志位

4. 在 Windows 上使用 Python

4.1. 完整安装程序

4.1.1. 安装步骤

4.1.2. 删除 MAX_PATH 限制

4.1.3. 安裝排除使用者介面

4.1.4. 當安裝時不下載

4.1.5. 修改安装

4.2. Microsoft Store包

4.2.1. 已知的问题

4.3. nuget.org 安装包

4.4. 可嵌入的包

4.4.1. Python应用程序

4.4.2. 嵌入 Python

4.5. 替代捆绑包

4.6. 設定 Python

4.6.1. 附录:设置环境变量

4.6.2. 查找Python可执行文件

4.7. UTF-8 模式

4.8. 适用于Windows的Python启动器

4.8.1. 開始

4.8.1.1. 从命令行

4.8.1.2. 虛擬環境(Virtual environment)

4.8.1.3. 从脚本

4.8.1.4. 從檔案關聯

4.8.2. Shebang Lines

4.8.3. shebang lines 的参数

4.8.4. 自定义

4.8.4.1. 通过INI文件自定义

4.8.4.2. 自定义默认的Python版本

4.8.5. 诊断

4.9. 查找模块

4.10. 附加模块

4.10.1. PyWin32

4.10.2. cx_Freeze

4.10.3. WConio

4.11. 編譯 Python 在 Windows

4.12. 其他平台

5. 在 Mac 系統使用Python

5.1. 取得和安裝 MacPython

5.1.1. 如何執行Python腳本

5.1.2. 透過使用者圖形介面執行腳本

5.1.3. 設定

5.2. 整合化開發工具

5.3. 安装额外的 Python 包

5.4. 圖形化使用者介面(GUI) 程式開發於Mac

5.5. 貢獻Python應用程式於 Mac

5.6. 其他資源

6. 编辑器和集成开发环境

Python 語言參考手冊

1. 簡介

1.1. 其他实现

1.2. 标注

2. 词法分析

2.1. 行结构

2.1.1. 逻辑行

2.1.2. 物理行

2.1.3. 注释

2.1.4. 编码声明

2.1.5. 显式拼接行

2.1.6. 隐式拼接行

2.1.7. 空白行

2.1.8. 缩进

2.1.9. 形符间的空白字符

2.2. 其他形符

2.3. 标识符和关键字

2.3.1. 关键字

2.3.2. 软关键字

2.3.3. 保留的标识符类

2.4. 字面值

2.4.1. 字符串与字节串字面值

2.4.2. 字符串字面值合并

2.4.3. 格式字符串字面值

2.4.4. 数值字面值

2.4.5. 整数字面值

2.4.6. 浮点数字面值

2.4.7. 虚数字面值

2.5. 运算符

2.6. 分隔符

3. 数据模型

3.1. 对象、值与类型

3.2. 标准类型层级结构

3.3. 特殊方法名称

3.3.1. 基本定制

3.3.2. 自定义属性访问

3.3.2.1. 自定义模块属性访问

3.3.2.2. 实现描述器

3.3.2.3. 调用描述器

3.3.2.4. __slots__

3.3.2.4.1. 使用 __slots__ 的注意事项

3.3.3. 自定义类创建

3.3.3.1. 元类

3.3.3.2. 解析 MRO 条目

3.3.3.3. 确定适当的元类

3.3.3.4. 准备类命名空间

3.3.3.5. 执行类主体

3.3.3.6. 创建类对象

3.3.3.7. 元类的作用

3.3.4. 自定义实例及子类检查

3.3.5. 模拟泛型类型

3.3.5.1. The purpose of __class_getitem__

3.3.5.2. __class_getitem__ versus __getitem__

3.3.6. 模拟可调用对象

3.3.7. 模拟容器类型

3.3.8. 模拟数字类型

3.3.9. with 语句上下文管理器

3.3.10. 定制类模式匹配中的位置参数

3.3.11. 特殊方法查找

3.4. 協程

3.4.1. 可等待对象

3.4.2. 协程对象

3.4.3. 异步迭代器

3.4.4. 异步上下文管理器

4. 执行模型

4.1. 程序的结构

4.2. 命名与绑定

4.2.1. 名称的绑定

4.2.2. 名称的解析

4.2.3. 内置命名空间和受限的执行

4.2.4. 与动态特性的交互

4.3. 例外

5. 导入系统

5.1. importlib

5.2. 包

5.2.1. 常规包

5.2.2. 命名空间包

5.3. 搜索

5.3.1. 模块缓存

5.3.2. 查找器和加载器

5.3.3. 导入钩子

5.3.4. 元路径

5.4. 加载

5.4.1. 加载器

5.4.2. 子模块

5.4.3. 模块规格说明

5.4.4. 导入相关的模块属性

5.4.5. module.__path__

5.4.6. 模块的 repr

5.4.7. 已缓存字节码的失效

5.5. 基于路径的查找器

5.5.1. 路径条目查找器

5.5.2. 路径条目查找器协议

5.6. 替换标准导入系统

5.7. 包相对导入

5.8. 有关 __main__ 的特殊事项

5.8.1. __main__.__spec__

5.9. 开放问题项

5.10. 参考文献

6. 表达式

6.1. 算术转换

6.2. 原子

6.2.1. 标识符(名称)

6.2.2. 字面值

6.2.3. 带圆括号的形式

6.2.4. 列表、集合与字典的显示

6.2.5. 列表显示

6.2.6. 集合显示

6.2.7. 字典显示

6.2.8. 生成器表达式

6.2.9. yield 表达式

6.2.9.1. 生成器-迭代器的方法

6.2.9.2. 模組

6.2.9.3. 异步生成器函数

6.2.9.4. 异步生成器-迭代器方法

6.3. 原型

6.3.1. 属性引用

6.3.2. 抽取

6.3.3. 切片

6.3.4. 调用

6.4. await 表达式

6.5. 幂运算符

6.6. 一元算术和位运算

6.7. 二元算术运算符

6.8. 移位运算

6.9. 二元位运算

6.10. 比较运算

6.10.1. 值比较

6.10.2. 成员检测运算

6.10.3. 标识号比较

6.11. 布尔运算

6.12. 赋值表达式

6.13. 条件表达式

6.14. lambda 表达式

6.15. 表达式列表

6.16. 求值顺序

6.17. 运算符优先级

7. 简单语句

7.1. 表达式语句

7.2. 赋值语句

7.2.1. 增强赋值语句

7.2.2. 带标注的赋值语句

7.3. assert 语句

7.4. pass 语句

7.5. del 语句

7.6. return 语句

7.7. yield 语句

7.8. raise 语句

7.9. break 语句

7.10. continue 语句

7.11. import 语句

7.11.1. future 语句

7.12. global 语句

7.13. nonlocal 语句

8. 复合语句

8.1. if 语句

8.2. while 语句

8.3. for 语句

8.4. try 语句

8.5. with 语句

8.6. match 语句

8.6.1. 概述

8.6.2. 约束项

8.6.3. 必定匹配的 case 块

8.6.4. 模式

8.6.4.1. 或模式

8.6.4.2. AS 模式

8.6.4.3. 字面值模式

8.6.4.4. 捕获模式

8.6.4.5. 通配符模式

8.6.4.6. 值模式

8.6.4.7. 组模式

8.6.4.8. 序列模式

8.6.4.9. 映射模式

8.6.4.10. 类模式

8.7. 函式定義

8.8. 类定义

8.9. 協程

8.9.1. 协程函数定义

8.9.2. async for 语句

8.9.3. async with 语句

9. 顶级组件

9.1. 完整的 Python 程序

9.2. 文件输入

9.3. 交互式输入

9.4. 表达式输入

10. 完整的語法規格書

Python 標準函式庫 (Standard Library)

簡介

可用性之註釋

內建函式

內建常數

由 site module(模組)所添增的常數

內建型態

逻辑值检测

布尔运算 --- and, or, not

比较运算

数字类型 --- int, float, complex

整数类型的按位运算

整数类型的附加方法

浮点类型的附加方法

数字类型的哈希运算

迭代器类型

生成器类型

序列类型 --- list, tuple, range

通用序列操作

不可变序列类型

可变序列类型

List(串列)

元组

range 对象

文本序列类型 --- str

字符串的方法

printf 风格的字符串格式化

二进制序列类型 --- bytes, bytearray, memoryview

bytes 对象

bytearray 对象

bytes 和 bytearray 操作

printf 风格的字节串格式化

内存视图

集合类型 --- set, frozenset

映射类型 --- dict

字典視圖物件

上下文管理器类型

类型注解的类型 --- Generic Alias 、 Union

GenericAlias 类型

Standard Generic Classes

Special Attributes of GenericAlias objects

union 类型

其他内置类型

模組

类与类实例

函式

方法

代码对象

类型对象

空对象

省略符对象

未实现对象

布尔值

内部对象

特殊属性

內建的例外

Exception context

繼承自內建的例外

基类

具体异常

OS 异常

警告

异常层次结构

文本處理 (Text Processing) 服務

string --- 常见的字符串操作

字符串常量

自定义字符串格式化

格式字符串语法

格式规格迷你语言

格式示例

模板字符串

辅助函数

re --- 正则表达式操作

正则表达式语法

模組內容

正则表达式对象 (正则对象)

匹配对象

正则表达式例子

检查对子

模拟 scanf()

search() vs. match()

制作一个电话本

文字整理

查找所有副词

查找所有的副词及其位置

原始字符串标记

写一个词法分析器

difflib --- 计算差异的辅助工具

SequenceMatcher 物件

SequenceMatcher 範例

Differ 对象

Differ 示例

difflib 的命令行接口

textwrap --- 文本自动换行与填充

unicodedata --- Unicode 数据库

stringprep --- 因特网字符串预备

readline --- GNU readline 接口

初始化文件

行缓冲区

历史文件

历史列表

启动钩子

Completion

範例

rlcompleter --- GNU readline 的补全函数

Completer 对象

二进制数据服务

struct --- 将字节串解读为打包的二进制数据

函式與例外

格式字符串

字节顺序,大小和对齐方式

格式字符

範例

codecs --- 编解码器注册和相关基类

编解码器基类

错误处理方案

无状态的编码和解码

增量式的编码和解码

IncrementalEncoder 物件

IncrementalDecoder 物件

流式的编码和解码

StreamWriter 物件

StreamReader 物件

StreamReaderWriter 物件

StreamRecoder 物件

编码格式与 Unicode

标准编码

Python 专属的编码格式

文字编码

二进制转换

文字转换

encodings.idna --- 应用程序中的国际化域名

encodings.mbcs --- Windows ANSI代码页

encodings.utf_8_sig --- 带BOM签名的UTF-8编解码器

数据类型

datetime --- 日期與時間的基本型別

感知型对象和简单型对象

常數

有效的类型

通用的特征属性

确定一个对象是感知型还是简单型

timedelta 物件

用法範例:timedelta

date 物件

用法範例:date

datetime 物件

用法示例: datetime

time 物件

用法示例: time

tzinfo 物件

timezone 物件

strftime() 與 strptime() 的行為

strftime() 和 strptime() Format Codes

技术细节

zoneinfo --- IANA 时区支持

使用 ZoneInfo

数据源

配置数据源

编译时配置

环境配置

运行时配置

ZoneInfo 类

字符串表示

封存序列化

函式

全局变量

异常与警告

calendar --- 日历相关函数

collections --- 容器資料型態

ChainMap 物件

ChainMap 範例和用法

Counter 物件

deque 物件

deque 用法

defaultdict 物件

defaultdict 範例

namedtuple() 擁有具名欄位之 tuple 的工廠函式

OrderedDict 物件

OrderedDict 範例與用法

UserDict 物件

UserList 物件

UserString 物件

collections.abc --- 容器的抽象基类

容器抽象基类

Collections Abstract Base Classes -- Detailed Descriptions

Examples and Recipes

heapq --- 堆積佇列 (heap queue) 演算法

基礎範例

優先佇列 (Priority Queue) 實作細節

原理

bisect --- 陣列二分演算法 (Array bisection algorithm)

性能说明

搜索有序列表

範例

array --- 高效率的數值型陣列

weakref --- 弱引用

弱引用对象

範例

终结器对象

比较终结器与 __del__() 方法

types --- 动态类型创建和内置类型名称

动态类型创建

标准解释器类型

附加工具类和函数

协程工具函数

copy --- 淺層 (shallow) 和深層 (deep) 複製操作

pprint --- 数据美化输出

PrettyPrinter 物件

範例

reprlib --- 另一种 repr() 实现

Repr 物件

子类化 Repr 对象

enum --- 对枚举的支持

模組內容

创建 Enum

枚举成员及其属性的编程访问

重复的枚举成员和值

确保唯一枚举值

使用自动设定的值

迭代

比较运算

允许的枚举成员和属性

受限的 Enum 子类化

封存

功能性 API

派生的枚举

IntEnum

IntFlag

旗标

其他事项

何时使用 __new__() 与 __init__()

有趣的示例

省略值

使用 auto

使用 object

使用描述性字符串

使用自定义的 __new__()

OrderedEnum

DuplicateFreeEnum

Planet

TimePeriod

各种枚举有何区别?

枚举类

枚举成员(即实例)

细节要点

支持的 __dunder__ 名称

支持的 _sunder_ 名称

_Private__names

Enum 成员类型

Enum 类和成员的布尔值

带有方法的 Enum 类

组合 Flag 的成员

graphlib --- 操作类似图的结构的功能

例外

數值與數學模組

numbers --- 数字的抽象基类

数字的层次

类型接口注释。

加入更多数字的ABC

实现算术运算

math --- 數學函式

数论与表示函数

幂函数与对数函数

三角函数

角度转换

双曲函数

特殊函数

常數

cmath --- 关于复数的数学函数

到极坐标和从极坐标的转换

幂函数与对数函数

三角函数

双曲函数

分类函数

常數

decimal --- 十进制定点和浮点运算

快速入门教程

Decimal 对象

逻辑操作数

上下文对象

常數

舍入模式

信号

浮点数说明

通过提升精度来解决舍入错误

特殊的值

使用线程

例程

Decimal 常见问题

fractions --- 分数

random --- 生成偽隨機數

簿記函式 (bookkeeping functions)

回傳位元組的函式

回傳整數的函式

回傳序列的函式

實數分布

替代產生器

關於 Reproducibility(復現性)的注意事項

範例

使用方案

statistics --- 數學統計函式

平均值與中央位置量數

離度 (spread) 的測量

对两个输入之间关系的统计

函式細節

例外

NormalDist 物件

NormalDist 示例和用法

函式編程模組

itertools --- 为高效循环而创建迭代器的函数

Itertool函数

itertools 配方

functools --- 高阶函数和可调用对象上的操作

partial 物件

operator --- 標準運算子替代函式

運算子與函式間的對映

原地 (in-place) 運算子

檔案與目錄存取

pathlib --- 面向对象的文件系统路径

基础使用

纯路径

通用性质

运算符

访问个别部分

方法和特征属性

具体路径

方法

对应的 os 模块的工具

os.path --- 常用路径操作

fileinput --- 迭代来自多个输入流的行

stat --- 解析 stat() 结果

filecmp --- 文件及目录的比较

dircmp 类

tempfile --- 生成临时文件和目录

範例

已弃用的函数和变量

glob --- Unix 风格路径名模式扩展

fnmatch --- Unix 文件名模式匹配

linecache --- 随机读写文本行

shutil --- 高阶文件操作

目录和文件操作

依赖于具体平台的高效拷贝操作

copytree 示例

rmtree 範例

归档操作

归档程序示例

使用 base_dir 的归档程序示例

查询输出终端的尺寸

数据持久化

pickle --- Python 对象序列化

与其他 Python 模块间的关系

与 marshal 间的关系

与 json 模块的比较

数据流格式

模組介面

可以被封存/解封的对象

封存类实例

持久化外部对象

Dispatch 表

处理有状态的对象

类型,函数和其他对象的自定义归约

外部缓冲区

提供方 API

使用方 API

範例

限制全局变量

性能

範例

copyreg --- 注册配合 pickle 模块使用的函数

範例

shelve --- Python 对象持久化

限制

範例

marshal --- 内部 Python 对象序列化

dbm --- Unix "数据库" 接口

dbm.gnu --- GNU 对 dbm 的重解析

dbm.ndbm --- 基于 ndbm 的接口

dbm.dumb --- 便携式 DBM 实现

sqlite3 --- SQLite 数据库 DB-API 2.0 接口模块

模块函数和常量

连接对象(Connection)

Cursor 对象

行对象

例外

SQLite 与 Python 类型

簡介

使用适配器将额外的 Python 类型保存在 SQLite 数据库中。

让对象自行适配

注册可调用的适配器

将SQLite 值转换为自定义Python 类型

默认适配器和转换器

控制事务

有效使用 sqlite3

使用快捷方式

通过名称而不是索引访问索引

使用连接作为上下文管理器

資料壓縮與保存

zlib --- 与 gzip 兼容的压缩

gzip --- 对 gzip 格式的支持

用法範例

命令行界面

命令行选项

bz2 --- 对 bzip2 压缩算法的支持

文件压缩和解压

增量压缩和解压

一次性压缩或解压缩

用法範例

lzma --- 用 LZMA 算法压缩

读写压缩文件

在内存中压缩和解压缩数据

杂项

指定自定义的过滤器链

範例

zipfile --- 使用ZIP存档

ZipFile 物件

Path 对象

PyZipFile 物件

ZipInfo 物件

命令行接口

命令行选项

解压缩的障碍

由于文件本身

文件系统限制

资源限制

中断

提取的默认行为

tarfile --- 读写tar归档文件

TarFile 物件

TarInfo 物件

命令行接口

命令行选项

範例

受支持的 tar 格式

Unicode 问题

檔案格式

csv --- CSV 文件读写

模組內容

变种与格式参数

Reader 对象

Writer 对象

範例

configparser --- 配置文件解析器

快速起步

支持的数据类型

回退值

受支持的 INI 文件结构

值的插值

映射协议访问

定制解析器行为

旧式 API 示例

ConfigParser 物件

RawConfigParser 物件

例外

netrc --- netrc 文件处理

netrc 物件

xdrlib --- 编码与解码 XDR 数据

Packer 对象

Unpacker 对象

例外

plistlib --- 生成与解析 Apple .plist 文件

範例

加密服务

hashlib --- 安全哈希与消息摘要

哈希算法

SHAKE 可变长度摘要

密钥派生

BLAKE2

创建哈希对象

常數

範例

简单哈希

使用不同的摘要大小

密钥哈希

随机哈希

个性化

树形模式

开发人员

hmac --- 基于密钥的消息验证

secrets --- 產生用於管理機密的安全亂數

亂數

產生權杖(token)

權杖應當使用多少個位元組?

其他函式

應用技巧和典範實務(best practices)

通用操作系统服务

os --- 多种操作系统接口

文件名,命令行参数,以及环境变量。

Python UTF-8 模式

进程参数

创建文件对象

文件描述符操作

查询终端的尺寸

文件描述符的继承

文件和目录

Linux 扩展属性

进程管理

调度器接口

其他系统信息

随机数

io --- 处理流的核心工具

總覽

文本 I/O

二进制 I/O

原始 I/O

文本编码格式

选择性的 EncodingWarning

高阶模块接口

类的层次结构

I/O 基类

原始文件 I/O

缓冲流

文本 I/O

性能

二进制 I/O

文本 I/O

多线程

可重入性

time --- 时间的访问和转换

函式

Clock ID 常量

时区常量

argparse --- 命令行选项、参数和子命令解析器

範例

创建一个解析器

增加引數

解析参数

ArgumentParser 物件

prog

usage

描述

epilog

parents

formatter_class

prefix_chars

fromfile_prefix_chars

argument_default

allow_abbrev

conflict_handler

add_help

exit_on_error

add_argument() 方法

name or flags

action

nargs

const

默认值

type -- 类型

choices

required

help

metavar

dest

Action 类

parse_args() 方法

选项值语法

无效的参数

包含 - 的参数

参数缩写(前缀匹配)

在 sys.argv 以外

命名空间对象

其它实用工具

子命令

FileType 物件

参数组

互斥

解析器默认值

打印帮助

部分解析

自定义文件解析

退出方法

混合解析

升级 optparse 代码

getopt --- C 风格的命令行选项解析器

logging --- Python 的日志记录工具

记录器对象

日志级别

处理器对象

格式器对象

过滤器对象

LogRecord 物件

LogRecord 属性

LoggerAdapter 物件

线程安全

模块级函数

模块级属性

与警告模块集成

logging.config --- 日志记录配置

配置函数

Security considerations

配置字典架构

字典架构细节

增量配置

对象连接

用户定义对象

访问外部对象

访问内部对象

导入解析与定制导入器

配置文件格式

logging.handlers --- 日志处理程序

StreamHandler

FileHandler

NullHandler

WatchedFileHandler

BaseRotatingHandler

RotatingFileHandler

TimedRotatingFileHandler

SocketHandler

DatagramHandler

SysLogHandler

NTEventLogHandler

SMTPHandler

MemoryHandler

HTTPHandler

QueueHandler

QueueListener

getpass --- 便携式密码输入工具

curses --- 终端字符单元显示的处理

函式

Window 对象

常量

curses.textpad --- 用于 curses 程序的文本输入控件

文本框对象

curses.ascii --- 用于 ASCII 字符的工具

curses.panel --- curses 的面板栈扩展

函式

Panel 对象

platform --- 获取底层平台的标识数据

跨平台

Java 平台

Windows 平台

macOS 平台

Unix 平台

Linux 平台

errno --- 标准 errno 系统符号

ctypes --- Python 的外部函数库

ctypes 教程

载入动态连接库

操作导入的动态链接库中的函数

调用函数

基础数据类型

调用函数,继续

使用自定义的数据类型调用函数

指定必选参数的类型(函数原型)

返回类型

传递指针(或以引用方式传递形参)

结构体和联合

结构体/联合字段对齐及字节顺序

结构体和联合中的位域

数组

指针

类型转换

不完整类型

回调函数

访问 dll 的导出变量

意外

变长数据类型

ctypes 参考手册

寻找动态链接库

加载动态链接库

外部函数

函数原型

工具函数

数据类型

基础数据类型

结构化数据类型

数组与指针

並行執行 (Concurrent Execution)

threading --- 基于线程的并行

线程本地数据

线程对象

锁对象

RLock 物件

条件对象

信号量对象

Semaphore 範例

事件对象

定时器对象

栅栏对象

在 with 语句中使用锁、条件和信号量

multiprocessing --- 基于进程的并行

簡介

Process 类

上下文和启动方法

在进程之间交换对象

进程间同步

进程间共享状态

使用工作进程

参考

Process 與例外

管道和队列

杂项

连接对象(Connection)

同步原语

共享 ctypes 对象

multiprocessing.sharedctypes 模块

管理器

自定义管理器

使用远程管理器

代理对象

清理

进程池

监听器及客户端

地址格式

认证密码

日志记录

multiprocessing.dummy 模块

编程指导

所有start方法

spawn 和 forkserver 启动方式

範例

multiprocessing.shared_memory --- 可从进程直接访问的共享内存

concurrent 套件

concurrent.futures -- 啟動平行任務

Executor 对象

ThreadPoolExecutor

ThreadPoolExecutor 範例

ProcessPoolExecutor

ProcessPoolExecutor 範例

Future 对象

模組函式

Exception 类

subprocess --- 子进程管理

使用 subprocess 模块

常用参数

Popen 构造函数

例外

安全考量

Popen 对象

Windows Popen 助手

Windows 常数

较旧的高阶 API

使用 subprocess 模块替换旧函数

替代 /bin/sh shell 命令替换

替代 shell 管道

替代 os.system()

替代 os.spawn 函数族

替代 os.popen(), os.popen2(), os.popen3()

来自 popen2 模块的替代函数

旧式的 Shell 发起函数

註解

在 Windows 上将参数列表转换为一个字符串

sched --- 事件调度器

调度器对象

queue --- 一个同步的队列类

Queue对象

SimpleQueue 物件

contextvars --- 上下文变量

上下文变量

手动上下文管理

asyncio 支持

_thread --- 底层多线程 API

网络和进程间通信

asyncio --- 非同步 I/O

协程与任务

協程

可等待对象

运行 asyncio 程序

创建任务

休眠

并发运行任务

屏蔽取消操作

超时

简单等待

在线程中运行

跨线程调度

内省

Task 对象

基于生成器的协程

StreamReader

StreamWriter

範例

使用流的 TCP 回显客户端

使用流的 TCP 回显服务器

获取 HTTP 标头

注册一个打开的套接字以等待使用流的数据

同步原语

Lock

事件

Condition

Semaphore

BoundedSemaphore

子行程

建立子行程

常數

与子进程交互

子行程與線程

範例

队列集

Queue

优先级队列

后进先出队列

例外

範例

例外

事件循环

事件循环方法集

运行和停止循环

安排回调

调度延迟回调

创建 Future 和 Task

打开网络连接

创建网络服务

传输文件

TLS 升级

监控文件描述符

直接使用 socket 对象

DNS

使用管道

Unix 信号

在线程或者进程池中执行代码。

错误处理API

开启调试模式

运行子进程

回调处理

Server 对象

事件循环实现

範例

call_soon() 的 Hello World 示例。

使用 call_later() 来展示当前的日期

监控一个文件描述符的读事件

为SIGINT和SIGTERM设置信号处理器

Futures

Future 函數

Future 物件

传输和协议

传输

传输层级

基础传输

只读传输

只写传输

数据报传输

子进程传输

协议

基础协议

基础协议

流式协议

缓冲流协议

数据报协议

子进程协议

範例

TCP 回显服务器

TCP 回显客户端

UDP 回显服务器

UDP 回显客户端

链接已存在的套接字

loop.subprocess_exec() 与 SubprocessProtocol

策略

获取和设置策略

策略对象

进程监视器

自定义策略

平臺支援

所有平台

Windows

Windows 的子行程支援

macOS

高階 API 索引

任務 (Tasks)

佇列 (Queues)

子行程 (Subprocesses)

串流 (Streams)

同步化 (Synchronization)

例外

低階 API 索引

獲取事件迴圈

事件迴圈方法

傳輸

協定

事件迴圈 Policies

用 asyncio 开发

Debug 模式

并发性和多线程

运行阻塞的代码

日志记录

检测 never-awaited 协同程序

检测就再也没异常

socket --- 底层网络接口

套接字协议族

模組內容

例外

常數

函式

创建套接字

其他功能

套接字对象

关于套接字超时的说明

超时与 connect 方法

超时与 accept 方法

範例

ssl --- 套接字对象的 TLS/SSL 包装器

函式、常數與例外

套接字创建

上下文创建

例外

随机生成

证书处理

常數

SSL 套接字

SSL 上下文

证书

证书链

CA 证书

合并的密钥和证书

自签名证书

範例

检测 SSL 支持

客户端操作

服务器端操作

关于非阻塞套接字的说明

内存 BIO 支持

SSL 会话

安全考量

最佳默认值

手动设置

验证证书

协议版本

密码选择

多进程

TLS 1.3

select --- 等待 I/O 完成

/dev/poll 轮询对象

边缘触发和水平触发的轮询 (epoll) 对象

Poll 对象

Kqueue 对象

Kevent 对象

selectors --- 高级 I/O 复用库

簡介

範例

asyncore --- 异步套接字处理器

asyncore 示例基本 HTTP 客户端

asyncore 示例基本回显服务器

asynchat --- 异步套接字指令/响应处理程序

asynchat 示例

signal --- 设置异步事件处理程序

一般规则

执行 Python 信号处理程序

信号与线程

模組內容

範例

对于 SIGPIPE 的说明

mmap --- 内存映射文件支持

MADV_* 常量

MAP_* 常量

互联网数据处理

email --- 电子邮件与 MIME 处理包

email.message: 表示一封电子邮件信息

email.parser: 解析电子邮件信息

FeedParser API

Parser API

附加说明

email.generator: 生成 MIME 文档

email.policy: Policy 对象

email.errors: 异常和缺陷类

email.headerregistry: 自定义标头对象

email.contentmanager: 管理 MIME 内容

内容管理器实例

email: 示例

email.message.Message: 使用 compat32 API 来表示电子邮件消息

email.mime: 从头创建电子邮件和 MIME 对象

email.header: 国际化标头

email.charset: 表示字符集

email.encoders: 编码器

email.utils: 其他工具

email.iterators: 迭代器

json --- JSON 编码和解码器

基本使用

编码器和解码器

例外

标准符合性和互操作性

字符编码

Infinite 和 NaN 数值

对象中的重复名称

顶级非对象,非数组值

实现限制

命令行界面

命令行选项

mailcap --- Mailcap 文件处理

mailbox --- 操作多种格式的邮箱

Mailbox 物件

Maildir

mbox

MH

Babyl

MMDF

Message 物件

MaildirMessage

mboxMessage

MHMessage

BabylMessage

MMDFMessage

例外

範例

mimetypes --- 映射文件名到 MIME 类型

MimeTypes 物件

base64 —— Base16、Base32、Base64、Base85 資料編碼

安全考量

binhex --- 对binhex4文件进行编码和解码

註解

binascii --- 二进制和 ASCII 码互转

quopri --- 编码与解码经过 MIME 转码的可打印数据

uu --- 对 uuencode 文件进行编码与解码

结构化标记处理工具

html --- 超文本标记语言支持

html.parser --- 简单的 HTML 和 XHTML 解析器

HTML 解析器的示例程序

HTMLParser 方法

範例

html.entities --- HTML 一般实体的定义

XML 處理模組

XML 漏洞

defusedxml 套件

xml.etree.ElementTree --- ElementTree XML API

教程

XML 树和元素

解析 XML

用于非阻塞解析的拉取 API

查找感兴趣的元素

修改XML文件

构建 XML 文档

解析带有命名空间的 XML

其他资源

XPath支持

範例

支持的XPath语法

参考

函式

XInclude 支持

範例

参考

函式

元素对象

ElementTree 物件

QName 物件

TreeBuilder 物件

XMLParser 物件

XMLPullParser 物件

例外

xml.dom --- 文档对象模型 API

模組內容

DOM 中的对象

DOMImplementation 物件

节点对象

NodeList 物件

DocumentType 物件

Document 对象

元素对象

Attr 对象

NamedNodeMap 物件

注释对象

Text 和 CDATASection 对象

ProcessingInstruction 物件

例外

一致性

类型映射

访问器方法

xml.dom.minidom --- 最小化的 DOM 实现

DOM 物件

DOM 範例

minidom 和 DOM 标准

xml.dom.pulldom --- 支持构建部分 DOM 树

DOMEventStream 物件

xml.sax --- 支持 SAX2 解析器

SAXException 物件

xml.sax.handler --- SAX 处理句柄的基类

ContentHandler 物件

DTDHandler 物件

EntityResolver 物件

ErrorHandler 物件

LexicalHandler 物件

xml.sax.saxutils --- SAX 工具集

xml.sax.xmlreader --- 用于 XML 解析器的接口

XMLReader 物件

IncrementalParser 物件

Locator 对象

InputSource 物件

Attributes 接口

AttributesNS 接口

xml.parsers.expat --- 使用 Expat 的快速 XML 解析

XMLParser 物件

ExpatError 例外

範例

内容模型描述

Expat 错误常量

互联网协议和支持

webbrowser --- 方便的 Web 浏览器控制工具

浏览器控制器对象

cgi --- 通用网关接口支持

簡介

使用 cgi 模块

更高层级的接口

函式

对于安全性的关注

在 Unix 系统上安装你的 CGI 脚本

测试你的 CGI 脚本

调试 CGI 脚本

常见问题和解决方案

cgitb --- 用于 CGI 脚本的回溯管理器

wsgiref --- WSGI 工具和参考实现

wsgiref.util -- WSGI 环境工具

wsgiref.headers -- WSGI 响应标头工具

wsgiref.simple_server -- 一个简单的 WSGI HTTP 服务器

wsgiref.validate --- WSGI 一致性检查器

wsgiref.handlers -- 服务器/网关基类

範例

urllib --- URL 處理模組

urllib.request --- 用來開啟 URLs 的可擴充函式庫

Request 对象

OpenerDirector 物件

BaseHandler 物件

HTTPRedirectHandler 物件

HTTPCookieProcessor 物件

ProxyHandler 物件

HTTPPasswordMgr 物件

HTTPPasswordMgrWithPriorAuth 物件

AbstractBasicAuthHandler 物件

HTTPBasicAuthHandler 物件

ProxyBasicAuthHandler 物件

AbstractDigestAuthHandler 物件

HTTPDigestAuthHandler 物件

ProxyDigestAuthHandler 物件

HTTPHandler 物件

HTTPSHandler 物件

FileHandler 物件

DataHandler 物件

FTPHandler 物件

CacheFTPHandler 物件

UnknownHandler 物件

HTTPErrorProcessor 物件

例子

已停用的接口

urllib.request 的限制

urllib.response --- urllib 使用的 Response 类

urllib.parse 用于解析 URL

URL 解析

解析ASCII编码字节

结构化解析结果

URL 转码

urllib.error --- urllib.request 引发的异常类

urllib.robotparser --- robots.txt 的剖析器

http --- HTTP 模块

HTTP 状态码

http.client --- HTTP 协议客户端

HTTPConnection 物件

HTTPResponse 物件

範例

HTTPMessage 物件

ftplib --- FTP 协议客户端

FTP 物件

FTP_TLS 物件

poplib --- POP3 协议客户端

POP3 物件

POP3 範例

imaplib --- IMAP4 协议客户端

IMAP4 物件

IMAP4 範例

nntplib --- NNTP 协议客户端

NNTP 物件

屬性

方法

工具函数

smtplib --- SMTP 协议客户端

SMTP 物件

SMTP 範例

smtpd --- SMTP 服务器

SMTPServer 物件

DebuggingServer 物件

PureProxy 物件

MailmanProxy 物件

SMTPChannel 物件

telnetlib -- Telnet 客户端

Telnet 对象

Telnet 範例

uuid --- RFC 4122 定义的UUID对象

範例

socketserver --- 用于网络服务器的框架

服务器创建的说明

Server 对象

请求处理句柄对象

範例

socketserver.TCPServer 範例

socketserver.UDPServer 範例

异步混合类

http.server --- HTTP 服务器

http.cookies --- HTTP状态管理

Cookie 物件

Morsel 物件

範例

http.cookiejar —— HTTP 客户端的 Cookie 处理

CookieJar 與 FileCookieJar 物件

FileCookieJar 的子类及其与 Web 浏览器的协同

CookiePolicy 物件

DefaultCookiePolicy 物件

Cookie 物件

範例

xmlrpc --- XMLRPC 服务端与客户端模块

xmlrpc.client --- XML-RPC 客户端访问

ServerProxy 物件

日期時間物件

Binary 对象

Fault 对象

ProtocolError 物件

MultiCall 物件

便捷函数

客户端用法的示例

客户端与服务器用法的示例

xmlrpc.server --- 基本 XML-RPC 服务器

SimpleXMLRPCServer 物件

SimpleXMLRPCServer 範例

CGIXMLRPCRequestHandler

文档 XMLRPC 服务器

DocXMLRPCServer 物件

DocCGIXMLRPCRequestHandler

ipaddress --- IPv4/IPv6 操作库

方便的工厂函数

IP 地址

地址对象

转换字符串和整数

运算符

比较运算符

算术运算符

IP网络的定义

前缀、网络掩码和主机掩码

网络对象

运算符

逻辑运算符

迭代

作为地址容器的网络

接口对象

运算符

逻辑运算符

其他模块级别函数

自定义异常

多媒体服务

audioop --- 处理原始音频数据

aifc --- 读写 AIFF 和 AIFC 文件

sunau --- 读写 Sun AU 文件

AU_read 物件

AU_write 物件

wave --- 读写WAV格式文件

Wave_read 物件

Wave_write 物件

chunk --- 读取 IFF 分块数据

colorsys --- 颜色系统间的转换

imghdr --- 推测图像类型

sndhdr --- 推测声音文件的类型

ossaudiodev --- 访问兼容OSS的音频设备

音频设备对象

混音器设备对象

國際化

gettext --- 多语种国际化服务

GNU gettext API

基于类的 API

NullTranslations 类

GNUTranslations 类

Solaris 消息编目支持

编目构造器

国际化 (I18N) 你的程序和模块

本地化你的模块

本地化你的应用程序

即时更改语言

延迟翻译

致謝

locale --- 国际化服务

背景、细节、提示、技巧和注意事项

针对扩展程序编写人员和嵌入Python 运行的程序

访问消息目录

程式框架

turtle --- 龜圖學

介紹

可用的 Turtle 和 Screen 方法概览

Turtle 方法

TurtleScreen/Screen 方法

RawTurtle/Turtle 方法和对应函数

海龟动作

获取海龟的状态

度量单位设置

画笔控制

绘图状态

颜色控制

填充

更多绘图控制

海龟状态

可见性

外观

使用事件

特殊海龟方法

复合形状

TurtleScreen/Screen 方法及对应函数

窗口控制

动画控制

使用屏幕事件

输入方法

设置与特殊方法

Screen 专有方法, 而非继承自 TurtleScreen

公共类

帮助与配置

如何使用帮助

文档字符串翻译为不同的语言

如何配置 Screen 和 Turtle

turtledemo --- 演示脚本集

Python 2.6 之后的变化

Python 3.0 之后的变化

cmd --- 支持面向行的命令解释器

Cmd 物件

Cmd 例子

shlex —— 简单的词法分析

shlex 物件

解析规则

改进的 shell 兼容性

以 Tk 打造 GUI

tkinter —— Tcl/Tk 的 Python 接口

架构

Tkinter 模块

Tkinter 拾遗

A Hello World Program

Important Tk Concepts

Understanding How Tkinter Wraps Tcl/Tk

How do I...? What option does...?

Navigating the Tcl/Tk Reference Manual

线程模型

快速参考

可选配置项

包装器

包装器的参数

部件与变量的关联

窗口管理器

Tk 参数的数据类型

绑定和事件

index 参数

图片

文件处理程序

tkinter.colorchooser --- 颜色选择对话框

tkinter.font --- Tkinter 字体封装

Tkinter 对话框

tkinter.simpledialog --- 标准 Tkinter 输入对话框

tkinter.filedialog --- 文件选择对话框.

原生的载入/保存对话框.

tkinter.commondialog --- 对话窗口模板

tkinter.messagebox --- Tkinter 消息提示

tkinter.scrolledtext --- 滚动文字控件

tkinter.dnd --- 拖放操作支持

tkinter.ttk --- Tk 风格的控件

ttk 的用法

ttk 控件

控件

标准属性

可滚动控件的属性

标签控件的属性

兼容性属性

控件状态

ttk.Widget

Combobox

属性

虚拟事件

ttk.Combobox

Spinbox

属性

虚拟事件

ttk.Spinbox

Notebook

属性

Tab 属性

Tab ID

虚拟事件

ttk.Notebook

Progressbar

属性

ttk.Progressbar

Separator

属性

Sizegrip

与平台相关的注意事项

Bug

Treeview

属性

数据项的属性

tag 属性

列标识

虚拟事件

ttk.Treeview

Ttk 样式

布局

tkinter.tix --- TK扩展包

使用 Tix

Tix 部件

基本部件

文件选择器

层级式列表框

表格式列表框

管理器部件

图像类型

其他部件

表单布局管理器

Tix 命令

IDLE

目錄

文件菜单 (命令行和编辑器)

编辑菜单(命令行和编辑器)

格式菜单(仅 window 编辑器)

运行菜单(仅 window 编辑器)

Shell 菜单(仅限 Shell 窗口)

调试菜单(仅限 Shell 窗口)

选项菜单(命令行和编辑器)

Window 菜单(命令行和编辑器)

帮助菜单(命令行和编辑器)

上下文菜单

编辑和导航

编辑窗口

按键绑定

自动缩进

完成

提示

代码上下文

Python Shell 窗口

文本颜色

启动和代码执行

命令行语法

启动失败

运行用户代码

Shell中的用户输出

开发 tkinter 应用程序

在没有子进程的情况下运行

帮助和偏好

帮助源

首选项设置

macOS 上的IDLE

扩展

開發工具

typing --- 类型提示支持

Relevant PEPs

类型别名

NewType

可调对象(Callable)

泛型(Generic)

用户定义的泛型类型

Any 型別

名义子类型 vs 结构子类型

模組內容

特殊类型原语

特殊类型

特殊形式

构建泛型类型

其他特殊指令

泛型具象容器

对应的内置类型

collections 对应类型

其他具象类型

抽象基类

collections.abc 对应的容器

collections.abc 对应的其他类型

异步编程

上下文管理器类型

协议

函式與裝飾器

内省辅助器

常數

pydoc --- 文档生成器和在线帮助系统

Python 开发模式

Python 开发模式的效果

ResourceWarning 範例

文件描述符错误示例

doctest --- 测试交互性的Python示例

简单用法:检查Docstrings中的示例

简单的用法:检查文本文件中的例子

它是如何工作的

哪些文件串被检查了?

文档串的例子是如何被识别的?

什么是执行上下文?

异常如何处理?

选项标记

指令

警告

基本API

Unittest API

高级 API

DocTest 物件

Example 物件

DocTestFinder 物件

DocTestParser 物件

DocTestRunner 物件

OutputChecker 物件

调试

肥皂盒

unittest --- 單元測試框架

簡單範例

命令執行列介面 (Command-Line Interface)

命令列模式選項

Test Discovery(測試探索)

组织你的测试代码

复用已有的测试代码

跳过测试与预计的失败

Distinguishing test iterations using subtests

类与函数

测试用例

Deprecated aliases

Grouping tests

Loading and running tests

load_tests Protocol

Class and Module Fixtures

setUpClass and tearDownClass

setUpModule and tearDownModule

信号处理

unittest.mock --- 模拟对象库

快速上手

Mock 类

Calling

Deleting Attributes

Mock names and the name attribute

Attaching Mocks as Attributes

The patchers

patch

patch.object

patch.dict

patch.multiple

patch methods: start and stop

patch builtins

TEST_PREFIX

Nesting Patch Decorators

Where to patch

Patching Descriptors and Proxy Objects

MagicMock and magic method support

Mocking Magic Methods

Magic Mock

Helpers

sentinel

DEFAULT

call

create_autospec

ANY

FILTER_DIR

mock_open

Autospeccing

Sealing mocks

unittest.mock 上手指南

使用 mock

模拟方法调用

对象上的方法调用的 mock

Mocking Classes

Naming your mocks

Tracking all Calls

Setting Return Values and Attributes

Raising exceptions with mocks

Side effect functions and iterables

Mocking asynchronous iterators

Mocking asynchronous context manager

Creating a Mock from an Existing Object

Patch Decorators

Further Examples

Mocking chained calls

Partial mocking

Mocking a Generator Method

Applying the same patch to every test method

Mocking Unbound Methods

Checking multiple calls with mock

Coping with mutable arguments

Nesting Patches

Mocking a dictionary with MagicMock

Mock subclasses and their attributes

Mocking imports with patch.dict

Tracking order of calls and less verbose call assertions

More complex argument matching

2to3 - 自動將 Python 2的程式碼轉成 Python 3

使用 2to3

修复器

lib2to3 —— 2to3 支持库

test --- Python回归测试包

Writing Unit Tests for the test package

Running tests using the command-line interface

test.support --- Utilities for the Python test suite

test.support.socket_helper --- Utilities for socket tests

test.support.script_helper --- Utilities for the Python execution tests

test.support.bytecode_helper --- Support tools for testing correct bytecode generation

test.support.threading_helper --- Utilities for threading tests

test.support.os_helper --- Utilities for os tests

test.support.import_helper --- Utilities for import tests

test.support.warnings_helper --- Utilities for warnings tests

除錯與效能分析

稽核事件表

bdb --- Debugger framework

faulthandler —— 转储 Python 的跟踪信息

转储跟踪信息

故障处理程序的状态

一定时间后转储跟踪数据。

转储用户信号的跟踪信息。

文件描述符相关话题

範例

pdb --- Python 的调试器

调试器命令

Python Profilers 分析器

profile分析器简介

实时用户手册

profile 和 cProfile 模块参考

Stats 类

什么是确定性性能分析?

限制

校正

使用自定义计时器

timeit --- 测量小代码片段的执行时间

基礎範例

Python 接口

命令執行列介面

範例

trace —— 跟踪 Python 语句的执行

命令行用法

主要的可选参数

修饰器

过滤器

编程接口

tracemalloc --- 跟踪内存分配

範例

显示前10项

计算差异

获取一个内存块的溯源

Pretty top

Record the current and peak size of all traced memory blocks

API

函式

DomainFilter

过滤器

Frame

快照

统计

StatisticDiff

跟踪

回溯

軟體封裝與發布

distutils --- 构建和安装 Python 模块

ensurepip --- Bootstrapping the pip installer

Command line interface

模組 API

venv --- 创建虚拟环境

创建虚拟环境

API

一个扩展 EnvBuilder 的例子

zipapp —— 管理可执行的 Python zip 打包文件

基本範例

命令執行列介面

Python API

範例

指定解释器程序

用 zipapp 创建独立运行的应用程序

制作 Windows 可执行文件

注意事项

Python 打包应用程序的格式

Python运行时服务

sys --- 系统相关的参数和函数

sysconfig --- Provide access to Python's configuration information

配置变量

安装路径

其他函式

Using sysconfig as a script

builtins --- 內建物件

__main__ --- Top-level code environment

__name__ == '__main__'

What is the "top-level code environment"?

Idiomatic Usage

Packaging Considerations

__main__.py in Python Packages

Idiomatic Usage

import __main__

warnings —— 警告信息的控制

警告类别

警告过滤器

警告过滤器的介绍

默认警告过滤器

重写默认的过滤器

暂时禁止警告

测试警告

为新版本的依赖关系更新代码

可用的函数

可用的上下文管理器

dataclasses --- 数据类

模块内容

初始化后处理

类变量

仅初始化变量

冻结的实例

继承

__init__() 中仅限关键字字段的重新排序

默认工厂函数

可变的默认值

contextlib --- 为 with语句上下文提供的工具

工具

例子和配方

Supporting a variable number of context managers

Catching exceptions from __enter__ methods

Cleaning up in an __enter__ implementation

Replacing any use of try-finally and flag variables

Using a context manager as a function decorator

Single use, reusable and reentrant context managers

Reentrant context managers

Reusable context managers

abc --- 抽象基类

atexit --- 退出处理器

atexit 範例

traceback —— 打印或读取堆栈的跟踪信息

TracebackException 物件

StackSummary 物件

FrameSummary 物件

Traceback Examples

__future__ --- Future 语句定义

gc --- 垃圾回收器接口

inspect --- 检查对象

类型和成员

Retrieving source code

Introspecting callables with the Signature object

类与函数

The interpreter stack

Fetching attributes statically

Current State of Generators and Coroutines

Code Objects Bit Flags

命令行界面

site —— 指定域的配置钩子

Readline 配置

模組內容

命令行界面

自定义 Python 解释器

code --- 解释器基类

交互解释器对象

交互式控制台对象

codeop --- 编译Python代码

匯入模組

zipimport --- 从 Zip 存档中导入模块

zipimporter 物件

範例

pkgutil --- 包扩展工具

modulefinder --- 查找脚本使用的模块

ModuleFinder 的示例用法

runpy ——查找并执行 Python 模块

importlib --- import 的实现

簡介

函式

importlib.abc —— 关于导入的抽象基类

importlib.resources -- 资源

importlib.machinery —— 导入器和路径钩子函数。

importlib.util —— 导入器的工具程序代码

範例

用编程方式导入

检查某模块可否导入。

直接导入源码文件。

实现延迟导入

导入器的配置

importlib.import_module() 的近似实现

Using importlib.metadata

概述

功能性 API

Entry points

Distribution metadata

Distribution versions

Distribution files

Distribution requirements

Package distributions

Distributions

Extending the search algorithm

Python 语言服务

ast --- 抽象语法树

抽象文法

节点类

字面值

Variables

表达式

Subscripting

Comprehensions

Statements

Imports

Control flow

Pattern matching

Function and class definitions

Async and await

ast 中的辅助函数

Compiler Flags

命令行用法

symtable ——访问编译器的符号表

符号表的生成

符号表的查看

token --- 与Python解析树一起使用的常量

keyword --- 检验Python关键字

tokenize --- 对 Python 代码使用的标记解析器

对输入进行解析标记

命令行用法

範例

tabnanny --- 模糊缩进检测

pyclbr --- Python 模块浏览器支持

函式物件

Class 对象

py_compile --- 编译 Python 源文件

命令行接口

compileall --- Byte-compile Python libraries

Command-line use

Public functions

dis --- Python bytecode的反組譯器

字节码分析

分析函数

Python字节码说明

操作码集合

pickletools --- pickle 开发者工具集

命令行语法

命令行选项

编程接口

Windows系统相关模块

msilib --- Read and write Microsoft Installer files

Database Objects

View Objects

Summary Information Objects

Record Objects

Errors

CAB 物件

Directory Objects

相关特性

GUI classes

Precomputed tables

msvcrt --- 来自 MS VC++ 运行时的有用例程

文件操作

控制台 I/O

其他函数

winreg --- 访问 Windows 注册表

函式

常數

HKEY_* 常量

访问权限

64 位系统特有

注册表值的类型

注册表句柄对象

winsound —— Windows 系统的音频播放接口

Unix 专有服务

posix --- 最常见的 POSIX 系统调用

大文件支持

重要的模块内容

pwd --- 用户密码数据库

spwd —— shadow 密码库

grp --- 组数据库

crypt —— 验证 Unix 口令的函数

哈希方法

模組屬性

模組函式

範例

termios --- POSIX 风格的 tty 控制

範例

tty --- 终端控制功能

pty --- 伪终端工具

範例

fcntl —— 系统调用 fcntl 和 ioctl

pipes --- 终端管道接口

模板对象

resource --- 资源使用信息

资源限制

资源用量

nis --- Sun 的 NIS (黄页) 接口

Unix syslog 库例程

範例

簡單範例

被取代的模块

optparse --- 解析器的命令行选项

背景

术语

What are options for?

位置位置

教程

Understanding option actions

The store action

Handling boolean (flag) options

Other actions

默认值

Generating help

Grouping Options

Printing a version string

How optparse handles errors

Putting it all together

参考指南

创建解析器

填充解析器

定义选项

Option attributes

Standard option actions

Standard option types

解析参数

Querying and manipulating your option parser

Conflicts between options

清理

Other methods

Option Callbacks

Defining a callback option

How callbacks are called

Raising errors in a callback

Callback example 1: trivial callback

Callback example 2: check option order

Callback example 3: check option order (generalized)

Callback example 4: check arbitrary condition

Callback example 5: fixed arguments

Callback example 6: variable arguments

Extending optparse

Adding new types

Adding new actions

imp —— 由代码内部访问 import 。

範例

未创建文档的模块

平台特定模块

Security Considerations

擴充和嵌入 Python 直譯器

推薦的第三方工具

不使用第三方工具建立擴充

1. 以 C 或 C++ 擴充 Python

1.1. 一個簡單範例

1.2. 关于错误和异常

1.3. 回到範例

1.4. 模块方法表和初始化函数

1.5. 编译和链接

1.6. 在C中调用Python函数

1.7. 提取扩展函数的参数

1.8. 给扩展函数的关键字参数

1.9. 构造任意值

1.10. 引用计数

1.10.1. Python中的引用计数

1.10.2. 拥有规则

1.10.3. 危险的薄冰

1.10.4. NULL指针

1.11. 在C++中编写扩展

1.12. 给扩展模块提供C API

2. 自定义扩展类型:教程

2.1. 基础

2.2. Adding data and methods to the Basic example

2.3. Providing finer control over data attributes

2.4. Supporting cyclic garbage collection

2.5. Subclassing other types

3. 定义扩展类型:已分类主题

3.1. 终结和内存释放

3.2. 对象展示

3.3. 属性管理

3.3.1. 泛型属性管理

3.3.2. Type-specific Attribute Management

3.4. Object Comparison

3.5. Abstract Protocol Support

3.6. Weak Reference Support

3.7. 更多建议

4. 构建C/C++扩展

4.1. 使用distutils构建C和C++扩展

4.2. 发布你的扩展模块

5. 在 Windows 上构建 C 和 C++ 扩展

5.1. 菜谱式说明

5.2. Unix 和 Windows 之间的差异

5.3. DLL 的实际使用

在更大的應用程式中嵌入 CPython 運行環境 (runtime)

1. 在其它 App 內嵌入 Python

1.1. 高层次的嵌入

1.2. 突破高层次嵌入的限制:概述

1.3. 只做嵌入

1.4. 对嵌入 Python 功能进行扩展

1.5. 在 C++ 中嵌入 Python

1.6. 在类 Unix 系统中编译和链接

Python/C API 參考手冊

簡介

代码标准

包含文件

有用的宏

对象、类型和引用计数

引用计数

引用计数细节

类型

例外

嵌入式Python

调试构建

C API Stability

稳定的应用程序二进制接口

Limited API Scope and Performance

Limited API Caveats

Platform Considerations

Contents of Limited API

The Very High Level Layer

參照計數

例外處理

打印和清理

抛出异常

发出警告

查询错误指示器

信号处理

例外類別

例外物件

Unicode 异常对象

递归控制

标准异常

标准警告类别

工具

作業系統工具

系統函式

行程(Process)控制

匯入模組

数据 marshal 操作支持

解析参数并构建值变量

解析参数

字符串和缓存区

數字

其他物件

API 函式

创建变量

字串轉換與格式化

反射

编解码器注册与支持功能

Codec 查找API

用于Unicode编码错误处理程序的注册表API

抽象物件層 (Abstract Objects Layer)

对象协议

调用协议

tp_call 协议

Vectorcall 协议

递归控制

Vectorcall 支持 API

调用对象的 API

调用支持 API

数字协议

序列协议

映射协议

迭代器协议

緩衝協定 (Buffer Protocol)

缓冲区结构

缓冲区请求的类型

与请求无关的字段

只读,格式

形状,步幅,子偏移量

连续性的请求

复合请求

复杂数组

NumPy-风格:形状和步幅

PIL-风格:形状,步幅和子偏移量

缓冲区相关函数

舊式緩衝協定 (Buffer Protocol)

具体的对象层

基礎物件

类型对象

Creating Heap-Allocated Types

None 物件

數值物件

整數物件

Boolean(布林)物件

浮點數(Floating Point)物件

复数对象

表示复数的C结构体

表示复数的Python对象

序列物件

bytes 对象

字节数组对象

类型检查宏

直接 API 函数

Unicode物件與編碼

Unicode对象

Unicode类型

Unicode字符属性

Creating and accessing Unicode strings

Deprecated Py_UNICODE APIs

Locale Encoding

File System Encoding

wchar_t Support

Built-in Codecs

Generic Codecs

UTF-8 Codecs

UTF-32 Codecs

UTF-16 Codecs

UTF-7 Codecs

Unicode-Escape Codecs

Raw-Unicode-Escape Codecs

Latin-1 Codecs

ASCII Codecs

Character Map Codecs

MBCS codecs for Windows

Methods & Slots

Methods and Slot Functions

元組(Tuple)物件

结构序列对象

List(串列)物件

容器物件

字典物件

集合对象

函式物件

函式(Function)物件

實體方法物件

方法对象

Cell 物件

代码对象

其他物件

檔案(File)物件

模組物件模組

Initializing C modules

Single-phase initialization

Multi-phase initialization

Low-level module creation functions

Support functions

Module lookup

疊代器(Iterator)物件

Descriptor(描述器)物件

切片物件

Ellipsis 对象

MemoryView 物件

弱參照物件

Capsule 对象

產生器物件

Coroutine(協程)物件

上下文变量对象

DateTime 物件

类型注解对象

初始化,终结和线程

在Python初始化之前

全局配置变量

Initializing and finalizing the interpreter

Process-wide parameters

Thread State and the Global Interpreter Lock

Releasing the GIL from extension code

非Python创建的线程

Cautions about fork()

高阶 API

Low-level API

Sub-interpreter support

错误和警告

异步通知

分析和跟踪

高级调试器支持

Thread Local Storage Support

Thread Specific Storage (TSS) API

Dynamic Allocation

方法

Thread Local Storage (TLS) API

Python初始化配置

範例

PyWideStringList

PyStatus

PyPreConfig

Preinitialize Python with PyPreConfig

PyConfig

Initialization with PyConfig

Isolated Configuration

Python Configuration

Python Path Configuration

Py_RunMain()

Py_GetArgcArgv()

Multi-Phase Initialization Private Provisional API

記憶體管理

總覽

Allocator Domains

原始内存接口

内存接口

对象分配器

默认内存分配器

自定义内存分配器

Debug hooks on the Python memory allocators

pymalloc 分配器

自定义 pymalloc Arena 分配器

tracemalloc C API

範例

对象实现支持

在堆上分配对象

通用物件結構

基本的对象类型和宏

Implementing functions and methods

Accessing attributes of extension types

类型对象

快速参考

"tp_方法槽"

子方法槽(方法域)

slot typedefs

PyTypeObject 定义

PyObject Slots

PyVarObject Slots

PyTypeObject 槽

Static Types

Heap Types

Number Object Structures

Mapping Object Structures

Sequence Object Structures

Buffer Object Structures

Async Object Structures

Slot Type typedefs

範例

使对象类型支持循环垃圾回收

控制垃圾回收器状态

API 和 ABI 版本管理

發布 Python 模組

關鍵術語

開源授權與協同合作

安裝工具

閱讀 Python 封裝使用者指南

我該如何...?

...為我的專案選擇一個名稱?

...建立和發布二進制擴充?

安裝 Python 模組

關鍵術語

基本用法

我該如何...?

...在 Python 3.4 之前的 Python 版本中安裝 pip?

...只為目前的使用者安裝套件?

...安裝科學的 Python 套件?

...平行安裝多個 Python 版本並使用它們?

常見的安裝問題

在 Linux 上安裝套件至系統 Python

未安裝 pip

安裝二進制擴充 (binary extension)

Python 如何達成任務

Python 2 的程式碼移植到Python 3

簡短的說明

詳細的

向下支援Python 2.6和更舊的版本

确保你在你的``setup.py``文件中指定适当的版本支持

有好的測試覆蓋率

瞭解Python 2 & 3的差異

更新你的程式碼

除法

文本与二进制数据

使用特征检测而不是版本检测

防止兼容性退步

检查哪些依赖性会阻碍你的过渡

更新你的``setup.py``文件以表示对Python 3的兼容

使用持续集成以保持兼容

考虑使用可选的静态类型检查

遷移延伸模組到 Python 3

用 Python 进行 Curses 编程

curses 是什么?

Python 的 curses 模块

开始和结束 curses 应用程序

窗口和面板

显示文字

属性和颜色

用户输入

更多的信息

修飾器 HowTo 指南

入门

简单示例:返回常量的描述器

动态查找

托管属性

定制名称

结束语

完整的实际例子

验证器类

自定义验证器

实际应用

技术教程

摘要

定义与介绍

描述器协议

描述器调用概述

通过实例调用

通过类调用

通过 super 调用

调用逻辑总结

自动名称通知

ORM 範例

纯 Python 等价实现

属性

函数和方法

方法的种类

静态方法

类方法

成员对象和 __slots__

函式編程 HOWTO

簡介

形式证明

模块化

易于调试和测试

组合性

迭代器

支持迭代器的数据类型

生成器表达式和列表推导式

生成器

向生成器传递值

内置函数

itertools 模块

创建新的迭代器

对元素使用函数

选择元素

组合函数

为元素分组

functools 模块

operator 模块

小函数和 lambda 表达式

修订记录和致谢

参考文献

通用文献

Python 相关

Python 文档

如何使用 Logging 模組

基礎 Logging 指南

什麼時候使用 logging

一個簡單範例

记录日志到文件

从多个模块记录日志

记录变量数据

更改显示消息的格式

在消息中显示日期/时间

后续步骤

进阶日志教程

记录流程

记录器

处理器

格式器

配置日志记录

如果没有提供配置会发生什么

配置库的日志记录

日志级别

自定义级别

有用的处理器

记录日志时引发的异常

使用任意对象作为消息

优化

日志操作手册

在多个模块中记录日志

在多个线程中记录日志

多个 handler 和多种 formatter

在多个地方记录日志

日志配置服务器示例

处理日志 handler 的阻塞

通过网络收发日志事件

Running a logging socket listener in production

在自己的输出日志中添加上下文信息

利用 LoggerAdapter 传递上下文信息

使用除字典之外的其它对象传递上下文信息

使用过滤器传递上下文信息

从多个进程记录至单个文件

concurrent.futures.ProcessPoolExecutor 的用法

Deploying Web applications using Gunicorn and uWSGI

轮换日志文件

使用其他日志格式化方式

自定义 LogRecord

子类化 QueueHandler - ZeroMQ 示例

子类化 QueueListener —— ZeroMQ 示例

基于字典进行日志配置的示例

利用 rotator 和 namer 自定义日志轮换操作

更加详细的多道处理示例

在发送给 SysLogHandler 的信息中插入一个 BOM。

结构化日志的实现代码

利用 dictConfig() 自定义 handler

生效于整个应用程序的格式化样式

LogRecord 工厂的用法

自定义信息对象的使用

利用 dictConfig() 定义过滤器

异常信息的自定义格式化

语音播报日志信息

缓冲日志消息并有条件地输出它们

通过配置使用UTC (GMT) 格式化时间

使用上下文管理器的可选的日志记录

命令行日志应用起步

Qt GUI 日志示例

理应避免的用法

多次打开同一个日志文件

将日志对象用作属性或传递参数

给日志库代码添加 NullHandler 之外的其他 handler

创建大量的日志对象

如何使用正規表達式

簡介

简单模式

匹配字符

重复

使用正则表达式

编译正则表达式

反斜杠灾难

应用匹配

模块级函数

编译标志

更多模式能力

更多元字符

分组

非捕获和命名组

前向断言

修改字符串

分割字符串

搜索和替换

常见问题

使用字符串方法

match() 和 search()

贪婪与非贪婪

使用 re.VERBOSE

反馈

套接字编程指南

套接字

历史

创建套接字

IPC

使用一个套接字

二进制数据

断开连接

套接字何时销毁

非阻塞的套接字

如何排序

基礎排序

关键函数

Operator 模块函数

升冪與降冪

排序稳定性和排序复杂度

使用装饰-排序-去装饰的旧方法

使用 cmp 参数的旧方法

其它

Unicode 指南

Unicode 概述

定義

编码

参考文献

Python对Unicode的支持

字符串类型

转换为字节

Python 源代码中的 Unicode 文字

Unicode属性

字符串比较

Unicode 正则表达式

参考文献

Unicode 数据的读写

Unicode 文件名

识别 Unicode 的编程技巧

在文件编码格式之间进行转换

编码格式未知的文件

参考文献

致謝

如何使用urllib套件取得網路資源

簡介

從URL取得資源

数据

HTTP 头部信息

异常的处理

URLError

HTTPError

错误代码

总之

第一种方案

第二种方案

info 和 geturl 方法

Opener 和 Handler

基本认证

代理

套接字与分层

註解

Argparse 教學

概念

基本用法

介紹位置參數

介紹選項參數

短选项

現在結合位置與選項參數

进行一些小小的改进

矛盾的选项

結論

ipaddress 模組介紹

创建 Address/Network/Interface 对象

关于IP版本的说明

IP主机地址

定义网络

主机接口

审查 Address/Network/Interface 对象

Network 作为 Address 列表

比较运算

将IP地址与其他模块一起使用

实例创建失败时获取更多详细信息

Argument Clinic How-To

The Goals Of Argument Clinic

Basic Concepts And Usage

Converting Your First Function

Advanced Topics

Symbolic default values

Renaming the C functions and variables generated by Argument Clinic

Converting functions using PyArg_UnpackTuple

Optional Groups

Using real Argument Clinic converters, instead of "legacy converters"

Py_buffer

Advanced converters

Parameter default values

The NULL default value

Expressions specified as default values

Using a return converter

Cloning existing functions

Calling Python code

Using a "self converter"

Using a "defining class" converter

Writing a custom converter

Writing a custom return converter

METH_O and METH_NOARGS

tp_new and tp_init functions

Changing and redirecting Clinic's output

The #ifdef trick

Using Argument Clinic in Python files

使用 DTrace 和 SystemTap 检测CPython

启用静态标记

静态DTrace探针

静态SystemTap标记

可用的静态标记

SystemTap Tapsets

範例

对象注解属性的最佳实践

在 Python 3.10 以上版本中访问对象的注解字典

在 Python 3.9 以上版本中访问对象的注解字典

解析字符串形式的注解

任何版本 Python 中使用 __annotations__ 的最佳实践

__annotations__ 的坑

Python 常見問題

常見Python問答集

常見資訊

Python在真實世界

程式開發常見問答集

常見問題

语言核心内容

数字和字符串

性能

序列(元组/列表)

对象

模組

设计和历史常见问题

为什么Python使用缩进来分组语句?

为什么简单的算术运算得到奇怪的结果?

為何浮點數運算如此不精確?

為何Python字串為不可變動

为什么必须在方法定义和调用中显式使用“self”?

为什么不能在表达式中赋值?

为什么Python对某些功能(例如list.index())使用方法来实现,而其他功能(例如len(List))使用函数实现?

为什么 join() 是一个字符串方法而不是列表或元组方法?

异常有多快?

为什么Python中没有switch或case语句?

难道不能在解释器中模拟线程,而非得依赖特定于操作系统的线程实现吗?

為何lambda表示式不能包含在敘述內

Python可以被編譯成機器語言或C語言或其他種語言嗎?

Python如何管理記憶體?

為何CPython不使用更多傳統的垃圾回收機制?

當CPython結束時,為何所有的記憶體不會被釋放?

为什么有单独的元组和列表数据类型?

列表是如何在CPython中实现的?

字典是如何在CPython中实现的?

为什么字典key必须是不可变的?

為何list.sort()不是回傳排序過的串列?

如何在Python中指定和实施接口规范?

為何沒有goto語法?

为什么原始字符串(r-strings)不能以反斜杠结尾?

为什么Python没有属性赋值的“with”语句?

生成器为什么不支持 with 语句?

为什么 if/while/def/class语句需要冒号?

为什么Python在列表和元组的末尾允许使用逗号?

函式庫和擴充功能的常見問題

常見函式問題

一般性的工作

线程相关

输入与输出

网络 / Internet 编程

数据库

数学和数字

扩展/嵌入常见问题

可以使用 C 语言创建自己的函数吗?

可以使用 C++ 语言创建自己的函数吗?

C很难写,有没有其他选择?

如何在 C 中执行任意 Python 语句?

如何在 C 中对任意 Python 表达式求值?

如何从Python对象中提取C的值?

如何使用Py_BuildValue()创建任意长度的元组?

如何从C调用对象的方法?

如何捕获PyErr_Print()(或打印到stdout / stderr的任何内容)的输出?

如何从C访问用Python编写的模块?

如何在 Python 中对接 C ++ 对象?

我使用Setup文件添加了一个模块,为什么make失败了?

如何调试扩展?

我想在Linux系统上编译一个Python模块,但是缺少一些文件。为什么?

如何区分“输入不完整”和“输入无效”?

如何找到未定义的g++符号__builtin_new或__pure_virtual?

能否创建一个对象类,其中部分方法在C中实现,而其他方法在Python中实现(例如通过继承)?

FAQ:在 Windows 使用 Python

在 Windows 作業系統裡我想執行 Python 程式,要怎麼做?

我怎么让 Python 脚本可执行?

为什么有时候 Python 程序会启动缓慢?

我怎样使用 Python 脚本制作可执行文件?

*.pyd 文件和 DLL 文件相同吗?

我怎样将 Python 嵌入一个 Windows 程序?

如何让编辑器不要在我的 Python 源代码中插入 tab ?

如何在不阻塞的情况下检查按键?

圖形化使用者界面常見問答集

常見圖形化使用者界面(GUI) 問題

Python 有哪些 GUI 工具包?

有关Tkinter的问题

「為什麼 Python 被安裝在我的機器上?」常見問答集

什麼是 Python?

為什麼 Python 被安裝在我的機器上?

我能夠自行刪除 Python 嗎?

術語表

關於這些說明文件

Python 文件的貢獻者們

處理錯誤 (Bug)

說明文件的錯誤

使用 Python 問題追蹤系統

開始讓自己貢獻 Python

版權宣告

沿革與授權

軟體沿革

關於存取或以其他方式使用 Python 的合約條款

用於 PYTHON 3.10.2 的 PSF 授權合約

用於 PYTHON 2.0 的 BEOPEN.COM 授權合約

用於 PYTHON 1.6.1 的 CNRI 授權合約

用於 PYTHON 0.9.0 至 1.2 的 CWI 授權合約

用於 PYTHON 3.10.2 說明文件內程式碼的 ZERO-CLAUSE BSD 授權

被收錄軟體的授權與致謝

Mersenne Twister

Sockets

非同步 socket 服務

Cookie 管理

執行追蹤

UUencode 與 UUdecode 函式

XML 遠端程序呼叫

test_epoll

Select kqueue

SipHash24

strtod 與 dtoa

OpenSSL

expat

libffi

zlib

cfuhash

libmpdec

W3C C14N 測試套件

沒有留言:

張貼留言

Python 標準函式庫 (Standard Library

Python 標準函式庫 (Standard Library) — Python 3.12.0a3 說明文件 ...