本文根据Python 3.6.5的官文Built-in Types而写。
目录
1.真值测试
2.布尔操作 -- and, or, not
3.比较
4.数字型 -- int, float, complex
5.迭代器类型
6.序列类型
7.文本序列类型 -- str
8.二进制序列类型 -- bytes, bytearray, memoryview
9.集合类型 -- set, frozenset
10.映射类型 -- dict
11.上下文管理器类型
12.其它内置类型
预告:模块,类&类实例,函数,方法,代码对象,类型对象,Null对象,Ellipsis对象,NotImplemented对象,Boolean值,内部对象
13.特殊属性
内容
1.真值测试
2.布尔操作 -- and, or, not
3.比较
4.数字型 -- int, float, complex
5.迭代器类型
6.序列类型
7.文本序列类型 -- str
8.二进制序列类型 -- bytes, bytearray, memoryview
9.集合类型 -- set, frozenset
10.映射类型 -- dict
11.上下文管理器类型
12.其它内置类型
12.1.模块
12.2.类和类实例
12.3.函数
12.4.方法
12.5.代码对象
12.6.type对象
12.7.Null对象
12.8.Ellipsis对象
12.9.NotImplemented对象
12.10.Boolean值
12.11.内部对象
查看The standard type hierarchy获取更多信息,它描述了stack frame对象、traceback对象和slice对象。
13.特殊属性
Python实现添加了几个特殊的只读属性给一些对象类型,这些属性是相对的,其中一些无法用dir()函数获取。
object.__dict__
一个字典 或 其它映射对象,用于存储一个对象的(可写)属性。
instance.__class__
实例所属的类。
class.__bases__
以元组形式存储一个类对象的基类。
1 >>> int.__bases__ 2 (<class 'object'>,)
definition.__name__
类、函数、方法、描述符(descriptor)或 生成器实例 的 名称。
1 >>> int.__name__ 2 'int'
definition.__qualname__
类、函数、方法、描述符(descriptor)或 生成器实例 的 权威名称(qualified name)。
1 >>> int.__qualname__ 2 'int'
class.__mro__
以元组形式存储了在方法解析时寻找的基类的顺序。
mro:methods resolution order.
class.mro()
这个方法可以被元类(metaclass)重写,用于定制它的实例的方法解析顺序,其结果存储在__mro__(见上一个)中。
1 >>> int.mro() 2 [<class 'int'>, <class 'object'>]
class.__subclasses__()
每一个类都保存了一个其直接子类的弱连接列表,这个方法返回还存在的这些引用的列表。
1 >>> int.__subclasses__() 2 [<class 'bool'>, <enum 'IntEnum'>, <enum 'IntFlag'>, <class 'sre_constants._NamedIntConstant'>, <class 'subprocess.Handle'>]
脚注
后记
2018-06-13 10:05:第一次编写此文