Python編程之多態(tài)用法實例詳解
本文實例講述了Python編程之多態(tài)用法。分享給大家供大家參考。具體分析如下:
什么是多態(tài)?顧名思義,多態(tài)就是多種表現(xiàn)形態(tài)的意思。它是一種機制、一種能力,而非某個關鍵字。它在類的繼承中得以實現(xiàn),在類的方法調用中得以體現(xiàn)。多態(tài)意味著變量并不知道引用的對象是什么,根據(jù)引用對象的不同表現(xiàn)不同的行為方式。
我們先看一個簡單的例子,運算符多態(tài):
a=34 b=57 print(a+b) a="世界" b="你好" print(a+b)
我們不知道+法運算符左右兩個變量是什么類型,當我們給的是int類型時,它就進行加法運算。當我們給的是字符串類型時,它就返回的是兩個字符串拼接的結果。也就是根據(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ù)取出來的,我們不知道它的具體類型,但是我們可以對它進行相同的操作。即讓它調用say方法,然后根據(jù)其類型的不同,它所表現(xiàn)的行為不同。這就是多態(tài)。
希望本文所述對大家的Python程序設計有所幫助。
相關文章
解決python字典對值(值為列表)賦值出現(xiàn)重復的問題
今天小編就為大家分享一篇解決python字典對值(值為列表)賦值出現(xiàn)重復的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-01-01
Python fire模塊(最簡化命令行生成工具)的使用教程詳解
Python Fire是谷歌開源的一個第三方庫,用于從任何Python對象自動生成命令行接口(CLI),可用于如快速拓展成命令行等形式。本文將通過實例為大家詳細說說fire模塊的使用,感興趣的可以了解一下2022-10-10
Python基于pygame實現(xiàn)的彈力球效果(附源碼)
這篇文章主要介紹了Python基于pygame實現(xiàn)的彈力球效果,涉及pygame圖形動態(tài)操作的相關的技巧,并附帶了完整的源碼供讀者下載參考,需要的朋友可以參考下2015-11-11
python爬蟲之urllib,偽裝,超時設置,異常處理的方法
今天小編就為大家分享一篇python爬蟲之urllib,偽裝,超時設置,異常處理的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-12-12
Python實現(xiàn)網(wǎng)絡端口轉發(fā)和重定向的方法
這篇文章主要介紹了Python實現(xiàn)網(wǎng)絡端口轉發(fā)和重定向的方法,結合實例形式分析了Python基于threading和socket模塊實現(xiàn)端口轉發(fā)與重定向的具體操作技巧,需要的朋友可以參考下2016-09-09

