題主所問的應(yīng)該是init構(gòu)造函數(shù)是否為類對象所有,答案實則不是這樣。python中由類構(gòu)建的對象不帶init函數(shù)(即不能由一個類的對象去構(gòu)造另一個對象)。
創(chuàng)新互聯(lián)于2013年創(chuàng)立,先為鐵東等服務(wù)建站,鐵東等地企業(yè),進行企業(yè)商務(wù)咨詢服務(wù)。為鐵東企業(yè)網(wǎng)站制作PC+手機+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。
類,class,用來描述具有相同的屬性和方法的對象的集合。它定義了該集合中每個對象所共有的屬性和方法。對象是類的實例。
函數(shù),是組織好的,可重復(fù)使用的,用來實現(xiàn)單一,或相關(guān)聯(lián)功能的代碼段。
函數(shù)能提高應(yīng)用的模塊性,和代碼的重復(fù)利用率。你已經(jīng)知道python提供了許多內(nèi)建函數(shù),比如print()。但你也可以自己創(chuàng)建函數(shù),這被叫作用戶自定義函數(shù)。
python語言中類和函數(shù)的區(qū)別
1、規(guī)則不同
類是一種引用數(shù)據(jù)類型,類似于byte、short、int(char)、long、float、double等基本數(shù)據(jù)類型;
函數(shù)必須聲明后才可以被調(diào)用,調(diào)用格式為:函數(shù)名(實參)調(diào)用時函數(shù)名后的小括號中的實參必須和聲明函數(shù)時的函數(shù)括號中的形參個數(shù)相同。
2、主體不同
類是面向?qū)ο蟪绦蛟O(shè)計實現(xiàn)信息封裝的基礎(chǔ);
函數(shù)是指一段在一起的、可以做某一件事的子程序。
3、特點不同
類是一種用戶定義的引用數(shù)據(jù)類型,也稱類類型,每個類包含數(shù)據(jù)說明和一組操作數(shù)據(jù)或者傳遞消息的函數(shù),類的實例稱為對象;
函數(shù)分為全局函數(shù)、全局靜態(tài)函數(shù),在類中還可以定義構(gòu)造函數(shù)、析構(gòu)函數(shù)、拷貝構(gòu)造函數(shù)、成員函數(shù)、友元函數(shù)、運算符重載函數(shù)、內(nèi)聯(lián)函數(shù)等。
創(chuàng)建一個寵物 Pet 類,根據(jù)該類創(chuàng)建的每個實例都將存儲名字和物種,賦予每個寵物吃飯(eat())和睡覺(sleep())的能力:
根據(jù)類創(chuàng)建實例
調(diào)用方法
給上面的例子進行補充,設(shè)置一個寵物到家的初始時間默認(rèn)值為 0,對某個屬性設(shè)定默認(rèn)值可以不提供形參。
調(diào)用一下read_time()
增加一個 update_time() 的方法,指定初始時間
調(diào)用
新增一個 increment_time() 方法,表示較初始值而言增加的時間
調(diào)用
一個類繼承另一個類時,它將自動獲得另一個類的所有屬性和方法;原有的類稱為父類,而新類稱為子類。子類繼承了其父類的所有屬性和方法,同時還可以定義自己的屬性和方法。
創(chuàng)建一個 Cat 類,繼承 Pet 的屬性,同時可以定義 Cat 特有的屬性。
調(diào)用
如果子類中的某些屬性與父類不一樣,可以在子類新建方法重新定義來改寫父類。
類的導(dǎo)入和函數(shù)的導(dǎo)入相同。