magic method -- 魔术办法special method 的非正式同义词 。mapping -- 映射一种支持任意键查询并实现了 Mapping 或 MutableMapping 抽象基类 中所规定办法的容器对象。 此类对象的例子包含 dict, collections.defaultdict, collections.OrderedDict 以及 collections.Counter。meta path finder -- 元路径查询器sys.meta_path 的搜索所返回的 finder。元路径查询器与 path entry finders 存在相关但并不相同。请查看 importlib.abc.MetaPathFinder 认识元路径查询器所实现的办法。metaclass -- 元类一种用于创建类的类。类定义包括类名、类字典和基类列表。元类负责接受以上三个参数并创建相应的类。大部分面向对象的编程语言都会供给一个默认实现。Python 的尤其之处在于能够创建自定义元类。大部分用户永远不必须这个工具,但当必须显现时,元类可供给强大而优雅的处理方法。它们已被用于记录属性拜访日志、添加线程安全性、跟踪对象创建、实现单例,以及其他许多任务。更加多详情参见 元类。method -- 办法在类内部定义的函数。倘若做为该类的实例的一个属性来调用,办法将会获取实例对象做为其第1个 argument (通常命名为 self)。参见 function 和 nested scope。method resolution order -- 办法解析次序办法解析次序便是在查询成员时搜索所有基类所用的先后次序。请查看 Python 2.3 办法解析次序 认识自 2.3 版起 Python 解析器所用关联算法的详情。module -- 模块此对象是 Python 代码的一种组织单位。各模块拥有独立的命名空间,可包括任意 Python 对象。模块可经过 importing 操作被加载到 Python 中。另见 package。module spec -- 模块规格一个命名空间,其中包括用于加载模块的关联导入信息。是importlib.machinery.ModuleSpec 的实例。MRO参见 method resolution order。mutable -- 可变可变对象能够在其 id() 保持固定的状况下改变其取值。另请参见 immutable。named tuple -- 具名元组术语“具名元组”可用于任何继承自元组,并且其中的可索引元素还能运用名叫作属性来拜访的类型或类。 这般的类型或类还可能持有其他特性。有些内置类型属于具名元组,包含time.localtime() 和 os.stat() 的返回值。 另一个例子是 sys.float_info:>>>>>> sys.float_info[1] # indexed access 1024 >>> sys.float_info.max_exp # named field access 1024 >>> isinstance(sys.float_info, tuple) # kind of tuple True有些具名元组是内置类型(例如上面的例子)。 另外,具名元组还可经过常规类定义从tuple 继承并定义名叫作字段的方式来创建。 这般的类能够手工编写,或运用工厂函数 collections.namedtuple() 创建。 后一种方式还会添加有些手工编写或内置具名元组所无的额外办法。
namespace -- 命名空间命名空间是存放变量的场所。命名空间有局部、全局和内置的,还有对象中的嵌套命名空间(在办法之内)。命名空间经过防止命名冲突来支持模块化。例如,函数builtins.open 与 os.open() 可经过各自的命名空间来区分。命名空间还经过知道哪个模块实现那个函数来帮忙加强可读性和可守护性。例如,random.seed() 或 itertools.islice() 这种写法知道了这些函数是由于 random 与 itertools 模块分别实现的。namespace package -- 命名空间包PEP 420所引入的一种仅被用作子包的容器的 package,命名空间包能够无实体暗示物,其描述方式与 regular package 区别,因为它们无 __init__.py 文件。另可参见 module。nested scope -- 嵌套功效域在一个定义范围内引用变量的能力。例如,在另一函数之内定义的函数能够引用前者的变量。请重视嵌套功效域默认只对引用有效而对赋值无效。局部变量的读写都受限于最内层功效域。类似的,全局变量的读写则功效于全局命名空间。经过nonlocal 关键字可准许写入外层功效域。new-style class -- 新式类针对日前已被应于所有类对象的类形式的旧叫作谓。在早先的 Python 版本中,仅有新式类能够运用 Python 新增的更灵活特性,例如 __slots__、描述符、特征属性、__getattribute__()、类办法和静态办法等。object -- 对象任何拥有状态(属性或值)以及预定义行径(办法)的数据。object 亦是任何 new-style class 的最顶层基类名。package -- 包一种可包括子模块或递归地包括子包的 Python module。从技术上说,包是带有 __path__ 属性的 Python 模块。另参见 regular package 和 namespace package。parameter -- 形参function (或办法)定义中的命名实体,它指定函数能够接受的一个 argument (或在某些状况下,多个实参)。有五种形参:positional-or-keyword:位置或关键字,指定一个能够做为 位置参数 传入亦能够做为 关键字参数 传入的实参。这是默认的形参类型,例如下面的 foo 和 bar:def func(foo, bar=None): ...positional-only:仅限位置,指定一个只能经过位置传入的参数。 仅限位置形参可经过在函数定义的形参列表中它们之后包括一个 / 字符来定义,例如下面的posonly1 和 posonly2:def func(posonly1, posonly2, /, positional_or_keyword): ...keyword-only:仅限关键字,指定一个只能经过关键字传入的参数。仅限关键字形参可经过在函数定义的形参列表中包括单个可变位置形参或在多个可变位置形参之前放一个 * 来定义,例如下面的kw_only1 和 kw_only2:def func(arg, *, kw_only1, kw_only2): ...var-positional:可变位置,指定能够供给由一个任意数量的位置参数形成的序列(附加在其他形参已接受的位置参数之后)。这种形参可经过在形参名叫作前加缀 * 来定义,例如下面的args:def func(*args, **kwargs): ...var-keyword:可变关键字,指定能够供给任意数量的关键字参数(附加在其他形参已接受的关键字参数之后)。这种形参可经过在形参名叫作前加缀 ** 来定义,例如上面的kwargs。形参能够同期指定可选和必选参数,亦能够为某些可选参数指定默认值。另参见 argument 术语表条目、参数与形参的区别 中的平常问题、inspect.Parameter 类、函数定义一节以及 PEP 362。path entry -- 路径入口import path 中的一个单独位置,会被 path based finder 用来查询要导入的模块。
path entry finder -- 路径入口查询器任一可调用对象运用 sys.path_hooks(即 path entry hook) 返回的 finder,此种对象能经过 path entry 来定位模块。请参看importlib.abc.PathEntryFinder 以认识路径入口查询器所实现的各个办法。path entry hook -- 路径入口钩子一种可调用对象,在晓得怎样查询特定 path entry 中的模块的状况下能够运用 sys.path_hook 列表返回一个 path entry finder。path based finder -- 基于路径的查询器默认的一种 元路径查询器,可在一个 import path 中查询模块。path-like object -- 路径类对象表率一个文件系统路径的对象。类路径对象能够是一个暗示路径的 str 或 bytes对象,还能够是一个实现了os.PathLike 协议的对象。一个支持 os.PathLike 协议的对象可经过调用 os.fspath() 函数转换为 str 或 bytes 类型的文件系统路径;os.fsdecode() 和 os.fsencode() 可被分别用来保证得到 str 或 bytes 类型的结果。此对象是由于 PEP 519 引入的。PEP“Python 加强提议”的英文缩写。一个 PEP 便是一份设计文档,用来向 Python 社区供给信息,或描述一个 Python 的新增特性及其进度或环境。PEP 应当供给精确的技术规格和所提议特性的原理说明。PEP 应被做为提出重点新特性意见、收集社区对特定问题反馈以及为必要加入 Python 的设计决策编写文档的首选机制。PEP 的作者有责任在社区内部创立共识,并应将区别意见亦记入文档。参见PEP 1。portion -- 部分形成一个命名空间包的单个目录内文件集合(亦可能存放于一个 zip 文件内),详细定义见 PEP 420。positional argument -- 位置参数参见 argument。provisional API -- 暂定 API暂定 API 指的是被有意排除在标准库的向后兼容性保准之外的应用编程接口。虽然此类接口一般不会再有重大改变,但只要其被标记为暂定,就可能在核心研发者确定有必要的状况下进行向后不兼容的更改(乃至包含移除该接口)。此种更改并不会随意进行 -- 仅在 API 被加入之前未思虑到的严重基本性缺陷被发掘时才可能会这般做。即便是对暂定 API 来讲,向后不兼容的更改亦会被视为“最后的处理方法” —— 任何问题被确认时都会尽可能先尝试找到一种向后兼容的处理方法。这种处理过程准许标准库连续持续地演进,不至于被有问题的长时间性设计缺陷所困。详情见PEP 411。provisional package -- 暂定包参见 provisional API。Python 3000Python 3.x 发布路线的昵叫作(这个名字在版本 3 的发布还遥遥无期的时候就已显现了)。有时亦被缩写为“Py3k”。Pythonic指一个思路或一段代码紧密遵循了 Python 语言最常用的风格和理念,而不是运用其他语言中通用的概念来实现代码。例如,Python 的常用风格是运用for语句循环来遍历一个可迭代对象中的所有元素。许多其他语言无这般的结构,因此呢不熟练 Python 的人有时会选取运用一个数字计数器:for i in range(len(food)): print(food[i])而相应的更简洁更 Pythonic 的办法是这般的:for piece in food: print(piece)qualified name -- 限定名叫作一个以点号分隔的名叫作,表示从模块的全局功效域到该模块中定义的某个类、函数或办法的“路径”,关联定义见PEP 3155。针对最高层级的函数和类,限定名叫作与对象名叫作一致:>>>>>> class C: ... class D: ... def meth(self): ... pass ... >>> C.__qualname__ C >>> C.D.__qualname__ C.D >>> C.D.meth.__qualname__ C.D.meth当被用于引用模块时,完整限定名叫作意为标示该模块的以点号分隔的全部路径,其中包括其所有的父包,例如 email.mime.text:>>>>>> import email.mime.text >>> email.mime.text.__name__ email.mime.text
reference count -- 引用计数对特定对象的引用的数量。当一个对象的引用计数降为零时,所分配资源将被释放。引用计数对 Python 代码来讲一般是不可见的,但它是 CPython 实现的一个关键元素。sys 模块定义了一个 getrefcount()函数,程序员可调用它来返回特定对象的引用计数。regular package -- 常规包传统型的 package,例如包括有一个 __init__.py 文件的目录。另参见 namespace package。slots一种写在类内部的声明,经过预先声明实例属性等对象并移除实例字典来节省内存。虽然这种技巧很流行,但想要用好却并不易,最好是只保存在少许状况下采用,例如极耗内存的应用程序,并且其中包括海量实例。sequence -- 序列一种 iterable,它支持经过 __getitem__() 特殊办法来运用整数索引进行有效的元素拜访,并定义了一个返回序列长度的 __len__()办法。内置的序列类型有list、str、tuple 和 bytes。重视虽然 dict 亦支持 __getitem__() 和 __len__(),但它被认为属于映射而非序列,由于它查询时运用任意的 immutable 键而非整数。collections.abc.Sequence 抽象基类定义了一个更丰富的接口,它在 __getitem__() 和 __len__() 之外又添加了 count(), index(), __contains__() 和 __reversed__()。 实现此扩展接口的类型能够运用 register() 来显式地注册。set comprehension -- 集合推导式处理一个可迭代对象中的所有或部分元素并返回结果集合的一种紧凑写法。 results = {c for c in abracadabra if c not in abc} 将生成字符串集合 {r, d}。 参见 列表、集合与字典的表示。single dispatch -- 单分派一种 generic function 分派形式,其实现是基于单个参数的类型来选取的。slice -- 切片一般只包括了特定 sequence 的一部分的对象。切片是经过运用下标标记来创建的,在 [] 中给出几个以冒号分隔的数字,例如 variable_name[1:3:5]。方括号(下标)标记在内部运用 slice 对象。special method -- 特殊办法一种由 Python 隐式调用的办法,用来对某个类型执行特定操作例如相加等等。这种办法的名叫作的首尾都为双下划线。特殊办法的文档参见 特殊办法名叫作。statement -- 语句语句是程序段(一个代码“块”)的构成单位。一条语句能够是一个 expression 或某个带相关键字的结构,例如 if、while 或 for。text encoding -- 文本编码用于将Unicode字符串编码为字节串的编码器。text file -- 文本文件一种能够读写 str对象的 file object。一般一个文本文件实质是拜访一个面向字节的数据流并自动处理 text encoding。文本文件的例子包含以文本模式(r 或 w)打开的文件、sys.stdin、sys.stdout 以及 io.StringIO 的实例。另请参看 binary file 认识能够读写 字节类对象 的文件对象。triple-quoted string -- 三引号字符串首尾各带三个连续双引号(")或单引号()的字符串。它们在功能上与首尾各用一个引号标注的字符串无什么区别,然则有多种用处。它们准许你在字符串内包括未经转义的单引号和双引号,并且能够跨越多行而无需运用连接符,在编写文档字符串时尤其好用。type -- 类型类型决定一个 Python 对象属于什么种类;每一个对象都拥有一种类型。要晓得对象的类型,能够拜访它的 __class__ 属性,或是经过 type(obj) 来获取。
type alias -- 类型别名一个类型的同义词,创建方式是把类型赋值给特定的标识符。类型别名的功效是简化 类型提示。例如:from typing import List, Tuple def remove_gray_shades( colors: List[Tuple[int, int, int]]) -> List[Tuple[int, int, int]]: pass能够这般加强可读性:from typing import List, Tuple Color = Tuple[int, int, int] def remove_gray_shades(colors: List[Color]) -> List[Color]: pass参见typing 和 PEP 484,其中有对此功能的仔细描述。type hint -- 类型提示annotation 为变量、类属性、函数的形参或返回值指定预期的类型。类型提示属于可选项,Python 不需求供给,但其可对静态类型分析工具起功效,并可帮助 IDE 实现代码补全与重构。全局变量、类属性和函数的类型提示能够运用typing.get_type_hints() 来拜访,但局部变量则不能够。参见 typing 和 PEP 484,其中有对此功能的仔细描述。universal newlines -- 通用换行一种诠释文本流的方式,将以下所有符号都识别为行结束标志:Unix 的行结束约定 \n、Windows 的约定 \r\n 以及旧版 Macintosh 的约定 \r。参见PEP 278 和 PEP 3116 和 bytes.splitlines() 认识更加多用法说明。variable annotation -- 变量标注对变量或类属性的 annotation。在标注变量或类属性时,还可选取为其赋值:class C: field: annotation变量标注一般被用作 类型提示:例如以下变量预期接受int类型的值:count: int = 0变量标注语法的仔细解释见 带标注的赋值语句 一节。请参看 function annotation、PEP 484 和 PEP 526,其中对此功能有仔细描述。virtual environment -- 虚拟环境一种采用协作式隔离的运行时环境,准许 Python 用户和应用程序在安装和升级 Python 分发包时不会干扰到同一系统上运行的其他 Python 应用程序的行径。另参见venv。virtual machine -- 虚拟机一台完全经过软件定义的计算机。Python 虚拟机可执行字节码编译器所生成的 bytecode。Zen of Python -- Python 之禅列出 Python 设计的原则与哲学,有助于理解与运用这种语言。查看其详细内容可在交互模式提示符中输入 "import this"。
最后,博主想说:我是一名python研发工程师,
整理了一套最新的python系统学习教程,
想要这些资料的能够关注私信博主“01”就可(免费分享哦)期盼能对你有所帮忙.
|