国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python中操作符重載用法分析

2020-01-04 17:30:25
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了Python中操作符重載用法,較為詳細的分析了Python操作符重載的功能,使用方法與相關注意事項,需要的朋友可以參考下
 

本文實例講述了Python中操作符重載用法。分享給大家供大家參考,具體如下:

類可以重載python的操作符

操作符重載使我們的對象與內置的一樣。__X__的名字的方法是特殊的掛鉤(hook),python通過這種特殊的命名來攔截操作符,以實現重載。 python在計算操作符時會自動調用這樣的方法,例如:

如果對象繼承了__add__方法,當它出現在+表達式中時會調用這個方法。通過重載,用戶定義的對象就像內置的一樣。

在類中重載操作符

1、操作符重載使得類能攔截標準的python操作。
2、類可以重載所有的python的表達式操作符。
3、類可以重載對象操作:print,函數調用,限定等。
4、重載使得類的實例看起來更像內置的。

5、重載是通過特殊命名的類方法來實現的。

方法名        重載的操作說明        調用表達式
__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)014916
 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 安庆市| 濮阳县| 顺平县| 南陵县| 乌审旗| 三河市| 涡阳县| 浏阳市| 阳朔县| 广安市| 临朐县| 微博| 万安县| 乡宁县| 正镶白旗| 南部县| 英山县| 香港| 南城县| 万荣县| 卫辉市| 大竹县| 龙川县| 门源| 阿尔山市| 通州区| 灵山县| 清远市| 辉南县| 五寨县| 丹棱县| 五大连池市| 广丰县| 宜宾县| 曲麻莱县| 嘉定区| 万源市| 通道| 泊头市| 临夏县| 嘉黎县|