源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

Python中操作符重载用法分析

  • 时间:2021-08-11 00:02 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:Python中操作符重载用法分析
本文实例讲述了Python中操作符重载用法。分享给大家供大家参考,具体如下: [b]类可以重载python的操作符[/b] 操作符重载使我们的对象与内置的一样。__X__的名字的方法是特殊的挂钩(hook),python通过这种特殊的命名来拦截操作符,以实现重载。 python在计算操作符时会自动调用这样的方法,例如: 如果对象继承了__add__方法,当它出现在+表达式中时会调用这个方法。通过重载,用户定义的对象就像内置的一样。 [b]在类中重载操作符[/b] 1、操作符重载使得类能拦截标准的python操作。 2、类可以重载所有的python的表达式操作符。 3、类可以重载对象操作:print,函数调用,限定等。 4、重载使得类的实例看起来更像内置的。 [b]5、重载是通过特殊命名的类方法来实现的。[/b] 方法名        重载的操作说明        调用表达式 __init__    构造函数        创建对象:class() __del__        析构函数        释放对象的时候 __add__        “+”            x + y __or__        “|”            x | y __repr__    打印,转换        print x, `x` __call__    函数调用        X() __getattr__    属性引用        x.undefined __getitem__    索引            x[key],for循环,in测试 __setitem__    索引赋值        x[key] = value __getslice__    分片            x[low:high] __len__        长度            len(x) __cmp__        比较            x == Y ,x < y __radd__    右边的操作符"+"        非实例 + x 例子: __getitem__拦截了所有的索引操作
>>> class indexer:
def __getitem__(self,index):
return index ** 2
>>> x = indexer()
>>> for i in range(5):
print x[i]  #x[i]将调用__getitem__(x,i)
0
1
4
9
16

更多关于Python相关内容可查看本站专题:《[url=http://www.1sucai.cn/Special/667.htm]Python正则表达式用法总结[/url]》、《[url=http://www.1sucai.cn/Special/663.htm]Python数据结构与算法教程[/url]》、《[url=http://www.1sucai.cn/Special/648.htm]Python Socket编程技巧总结[/url]》、《[url=http://www.1sucai.cn/Special/642.htm]Python函数使用技巧总结[/url]》、《[url=http://www.1sucai.cn/Special/636.htm]Python字符串操作技巧汇总[/url]》、《[url=http://www.1sucai.cn/Special/520.htm]Python入门与进阶经典教程[/url]》及《[url=http://www.1sucai.cn/Special/516.htm]Python文件与目录操作技巧汇总[/url]》 希望本文所述对大家Python程序设计有所帮助。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部