深入探索Python类的高级特性
1. 面向对象编程与类属性
面向对象编程(OOP)不仅有助于创建和组织新的数据结构,还会影响解决问题的思维方式。OOP有三个主要特性:封装、继承和多态,这里主要关注封装。
1.1 封装及其扩展
封装具有以下作用:
- 隐藏实现细节,便于阅读和理解。
- 提供模块化,使类在其他上下文中更易于使用。
- 以方法的形式提供接口,用于访问和操作类的实例。
在此基础上,引入了一致性的概念。一致性有两个方面需要考虑:
- 新类应与语言的规则和语法保持一致。
- 新类应能响应适用于该对象的“标准方法”,如构造、打印和迭代等。
1.2 有理数类示例
Python在2.6版本之前没有对有理数的支持,之后通过 fractions 模块和 Fraction 类提供了支持。这里实现一个自定义的有理数类,它应具备以下操作:
- 构造
- 打印
- 算术运算符(+、 -、 *、 /)
- 比较运算符(<、 >、 ==等)
以下是使用自定义有理数类的示例代码:
# get our rational number class named frac class
In [1]: from frac class import *
In [2]: r1 = Rational(1,2) # create the fraction 1/2
In [3]: r2 =
超级会员免费看
订阅专栏 解锁全文
4万+

被折叠的 条评论
为什么被折叠?



