當前位置:
首頁 > 最新 > Python入門基礎之面向對象四:運算符重載

Python入門基礎之面向對象四:運算符重載


Magic函數(特殊鉤子)

在python類中,我們經常見到前後是兩個下劃線的函數名,最常見的就是__init__函數了,那麼這種函數是什麼?這種函數是python內置函數被稱為特殊鉤子,也稱為magic函數。

這種函數讓讓對象和python的模型對象緊密的結合起來,讓我們自己的對象行為就像內置的對象行為一樣。

Python裡面有幾十種特殊運算符重載的方法,基本可以實現所有內置類型運算。包括數字、字元串、對象等。

其實運算符重載在入門階段基本用不到,這個只是先讓我們了解一下面向對象的好處。

簡單的看一些平時接觸的多的,主要有以下:

比較運算符:

數字運算符:

邏輯運算:

那麼這些方法如何使用呢?

在類中,我們可以繼承這些方法,然後重寫他們就可以了,比如,你在子類裡面重寫了__eq__方法,那麼你的對象便可以直接用等於,例如

代碼示例用法

類代碼,定義的一個類

在類中重寫了eq方法,我們可以看到,重寫之後在pycharm中它左邊會出現標誌,表示這個方法被重寫。

我們定義的是判斷兩個程序員的年齡是否相等,如果相等就返回True,反之返回False。

這裡我們加了異常,傳入錯誤的時候主動觸發異常,前面我也講過異常,有興趣的可以看看。

下面是調用方法和運行結果:

我們實例化了兩個程序員,第一個參數是名字,第二個是年齡,第三個是體重,然後我們直接用==操作符來判斷他們的年齡是否相等。

注意,如果我們沒有在類中定義__eq__這樣運行結果會報錯的。

其他操作的用法是一樣的,就不一一演示了。

快來領支付寶紅包!人人可領,天天可領!複製此消息,打開最新版支付寶就能領取!sK6wHt00X5

上一篇:乾貨!python入門基礎之面向對象三:繼承

乾貨!Python入門基礎之面向對象二:類和實例、方法

Python 入門基礎之面向對象過程-面向過程概述


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 Python 的精彩文章:

Fabric3:Fabric的Python3支持版
這是小白的Python新手教程

TAG:Python |