Python編程之多態(tài)用法實例詳解
本文實例講述了Python編程之多態(tài)用法。分享給大家供大家參考。具體分析如下:
什么是多態(tài)?顧名思義,多態(tài)就是多種表現(xiàn)形態(tài)的意思。它是一種機制、一種能力,而非某個關(guān)鍵字。它在類的繼承中得以實現(xiàn),在類的方法調(diào)用中得以體現(xiàn)。多態(tài)意味著變量并不知道引用的對象是什么,根據(jù)引用對象的不同表現(xiàn)不同的行為方式。
我們先看一個簡單的例子,運算符多態(tài):
a=34 b=57 print(a+b) a="世界" b="你好" print(a+b)
我們不知道+法運算符左右兩個變量是什么類型,當(dāng)我們給的是int類型時,它就進行加法運算。當(dāng)我們給的是字符串類型時,它就返回的是兩個字符串拼接的結(jié)果。也就是根據(jù)變量類型的不同,表現(xiàn)不能的形態(tài)。
我們再來看一個例子,方法多態(tài):
我們首先創(chuàng)建一個名為MyClass.py的文件,代碼如下
__author__= 'MXi4oyu' classPeople: def say(self): print("大家好!") classStudent: def say(self): print("老師好!")
我們再創(chuàng)建一個Main.py的文件,代碼如下:
__author__= 'MXi4oyu' fromrandom import choice importMyClass p1=MyClass.People() stu1=MyClass.Student() #通過choice方法我們可以隨機選擇列表中的某一項 obj=choice([p1,stu1]) print(type(obj)) obj.say()
我們創(chuàng)建的臨時對象obj是由隨機函數(shù)取出來的,我們不知道它的具體類型,但是我們可以對它進行相同的操作。即讓它調(diào)用say方法,然后根據(jù)其類型的不同,它所表現(xiàn)的行為不同。這就是多態(tài)。
希望本文所述對大家的Python程序設(shè)計有所幫助。
相關(guān)文章
Python實現(xiàn)byte轉(zhuǎn)integer
這篇文章主要介紹了Python實現(xiàn)byte轉(zhuǎn)integer操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-06-06python 根據(jù)excel中顏色區(qū)分讀取的操作
這篇文章主要介紹了python 根據(jù)excel中顏色區(qū)分讀取的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-03-03PyCharm配置anaconda環(huán)境的步驟詳解
PyCharm是一款很好用很流行的python編輯器。Anaconda通過管理工具包、開發(fā)環(huán)境、Python版本,大大簡化了你的工作流程。今天通過本文給大家分享PyCharm配置anaconda環(huán)境,感興趣的朋友一起看看吧2020-07-07python數(shù)字圖像處理之基本形態(tài)學(xué)濾波
這篇文章主要為大家介紹了python數(shù)字圖像處理之基本形態(tài)學(xué)濾波示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-06-06