File tree Expand file tree Collapse file tree 1 file changed +1
-1
lines changed Expand file tree Collapse file tree 1 file changed +1
-1
lines changed Original file line number Diff line number Diff line change 226
226
| >= | ` __ge__ ` |
227
227
| <= | ` __le__ ` |
228
228
229
- 以“+”为例,不论是实现` 1 + 2 ` 还是` 'abc' + 'xyz' ` ,都是要执行` 1.__add__(2) ` 或者` 'abc'.__add__('xyz') ` 操作。也就是两个对象是否能进行加法运算,首先就要看相应的对象是否有` __add__() ` 方法(读者不妨在交互模式中使用` dir() ` ,看一看整数、字符串是否有` __add__() ` 方法),一旦相应的对象有 __ add __ () 方法,即使这个对象从数学上不可加,我们都可以用加法的形式,来表达` obj.__add__() ` 所定义的操作。在Python中,运算符起到简化书写的功能,但它依靠特殊方法实现。
229
+ 以“+”为例,不论是实现` 1 + 2 ` 还是` 'abc' + 'xyz' ` ,都是要执行` 1.__add__(2) ` 或者` 'abc'.__add__('xyz') ` 操作。也就是两个对象是否能进行加法运算,首先就要看相应的对象是否有` __add__() ` 方法(读者不妨在交互模式中使用` dir() ` ,看一看整数、字符串是否有` __add__() ` 方法),一旦相应的对象有 ` __add__() ` 方法,即使这个对象从数学上不可加,我们都可以用加法的形式,来表达` obj.__add__() ` 所定义的操作。在Python中,运算符起到简化书写的功能,但它依靠特殊方法实现。
230
230
231
231
所以,在刚才自定义的类` Fraction ` 中,为了实现分数加法,我们重写了` __add__() ` 方法,也可以称之为运算符重载(对于Python是否支持重载,也是一个争论话题)。
232
232
You can’t perform that action at this time.
0 commit comments