标签:字符 应该 icm 格式 电子 ati fluent @class 内置函数
这一章接第1章,说明常见的特殊方法实现。
- 支持用于生成对象其它表示形式的内置函数(如repr()、bytes(),等等)
- 使用一个类方法实现备选构造方法
- 扩展内置的format()和str.format()使用的格式微语言
- 实现只读属性
- 把对象变为可散列的,以便在集合中和作为dict的键使用
- 利用__slots__节省内存
- 如何以及何时使用@classmethod和@staticmethod装饰器
- Python的私有属性和受保护属性的用法、约定和局限
将开发一个简单的二维欧几里得向量类型,在这个过程中涵盖上述全部话题。
模仿Python标准对象的行为,让Vector的行为符合Python风格。
面向对象语言至少都有一种获取对象的字符串表示形式的标准形式。Python提供了两种方式。
1.1 repr(): 便于开发者理解的方式返回对象的字符串表示形式。
1.2 str():便于用户理解的方式返回对象的字符串表示形式。
1.3 实现__repr__和__str__特殊方法,为repr()和str()提供支持。
1.4 repr、str、__format__都返回Unicode字符串(str类型)。只有__bytes__方法应该返回字节序列(bytes类型)。
中文电子书P387
Fluent_Python_Part4面向对象,09-pythonic-obj,Python风格的对象
标签:字符 应该 icm 格式 电子 ati fluent @class 内置函数
原文地址:https://www.cnblogs.com/allen2333/p/8859039.html