13. Special Attributes
该实现为几个相关的对象类型添加了一些特殊的只读属性。其中一些不是由dir()内置函数报告的。
object.__dict__
用于存储对象(可写)属性的字典或其他映射对象。
object.__methods__
自2.2版弃用:使用内置函数dir()获取对象属性的列表。该属性不再可用。
object.__members__
自2.2版弃用:使用内置函数dir()获取对象属性的列表。该属性不再可用。
instance.__class__
类实例所属的类。
class.__bases__
类对象的基类的元组。
definition.__name__
类,类型,函数,方法,描述符或生成器实例的名称。
以下属性仅受新风格类 es的支持。
class.__mro__
此属性是在方法解析期间查找基类时所考虑的类的元组。
class.mro()
这个方法可以被一个元类覆盖,为它的实例定制方法解析顺序。它在类实例化中被调用,并且其结果被存储在__mro__。
class.__subclasses__()
每个新样式类都保留一个对其直接子类的弱引用列表。该方法返回所有这些仍然存在的引用的列表。例:
>>> int.__subclasses__()
[
复制
注
1 | 有关这些特殊方法的更多信息,请参阅Python参考手册(基本定制)。 |
---|---|
2 | 结果,列表1,2被认为等于1.0,2.0,对于元组也是类似的。 |
3 | 自解析器无法分辨操作数的类型以来,它们必须具备。 |
4 | (1,2,3,4)套用字符是那些通用类属性是“Lu”(Letter,大写),“Ll”(Letter,小写)或“Lt”(Letter,titlecase)之一的字符。 |
5 | 为了只格式化一个元组,你应该提供一个单元组元素,它的唯一元素是要被格式化的元组。 |
6 | 离开换行符的优点是返回一个空字符串是一个明确的EOF指示。这也有可能(例如,如果你想在扫描文件的同时制作一份文件的精确副本),以判断文件的最后一行是否以换行符结束(是的,这是发生的!)。 |