![類的屬性和方法_第1頁](http://file4.renrendoc.com/view/deffa88867c53b5aa0a3338eb46545cb/deffa88867c53b5aa0a3338eb46545cb1.gif)
![類的屬性和方法_第2頁](http://file4.renrendoc.com/view/deffa88867c53b5aa0a3338eb46545cb/deffa88867c53b5aa0a3338eb46545cb2.gif)
![類的屬性和方法_第3頁](http://file4.renrendoc.com/view/deffa88867c53b5aa0a3338eb46545cb/deffa88867c53b5aa0a3338eb46545cb3.gif)
![類的屬性和方法_第4頁](http://file4.renrendoc.com/view/deffa88867c53b5aa0a3338eb46545cb/deffa88867c53b5aa0a3338eb46545cb4.gif)
![類的屬性和方法_第5頁](http://file4.renrendoc.com/view/deffa88867c53b5aa0a3338eb46545cb/deffa88867c53b5aa0a3338eb46545cb5.gif)
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
類的屬性和方法Class<類名>(父類名):passClass 定義類的關鍵字;類名
符合類的關鍵字;類名
符合標志符規(guī)范的名稱;父類名
該類繼承的父類名稱;Pass 空語句。例如:DefMyfunc()pass定義類2使用類ClassMyClass: #定義一個類
“MyClasshelp” #該類只有一個說明信息,沒有具體語句myclass=MyClass() #將自定義類MyClass實例化,名稱為myclassPrint(‘輸出類說明:’) Print(myclass._doc_) #輸出類實例myclass的屬性_doc_的值Help(myclass) #輸出類的幫助信息3類的屬性和方法類的方法類的方法實際上為類的能力建模,那么定義類的方法讓類具有一定的能動性。在類外部調用該類的方法就可以完成相應的功能,或改變類的狀態(tài),或達到其他目的。類中的方法定義和調用與函數(shù)定義和調用的方式基本相同,其區(qū)別有:方法的第一個參數(shù)必須是self,而且不能省略;方法的調用需要實例化類,并以實例名、方法名(參數(shù)列表)形式調用;整體進行一個單位的縮進,表示其屬于類體中的內容。4類的方法#類的方法使用classSmplClass:#定義一個類SmplClassdefinfo(self):#定義一個類的方法info()print('我定義的類!')defmycacl(self,x,y):#定義一個類的方法mycacl()returnx+ysc=SmplClass()#實例化類SmplClass()print('調用info方法的結果:')()print('調用mycacl方法的結果:')print(sc.mycacl(3,4))#其中調用類實例sc的mycacl()方法5構造函數(shù):__init__的使用#構造函數(shù)__init__的使用classDemoInit:def__init__(self,x,y=0):#定義構造方法,具有兩個初始化
self.x=xself.y=ydefmycacl(self):#定義應用初始化數(shù)據(jù)的方法
returnself.x+self.ydia=DemoInit(3)#用一個參數(shù)實例化類print('調用mycacl方法的結果1:')print(dia.mycacl())dib=DemoInit(3,7)#調用兩個參數(shù)實例化類print('調用mycacl方法的結果2:')print(dib.mycacl())6類也是對象在理解元類之前,你需要先掌握Python中的類。Python中類的概念借鑒于Smalltalk,這顯得有些奇特。在大多數(shù)編程語言中,類就是一組用來描述如何生成一個對象的代碼段。在Python中這一點仍然成立:>>>classObjectCreator(object): pass>>>my_object=ObjectCreator()>>>print(my_object)<__main__.ObjectCreatorobjectat0x0000028013B36278>但是,Python中的類還遠不止如此。類同樣也是一種對象。是的,沒錯,就是對象。只要你使用關鍵字class,Python解釋器在執(zhí)行的時候就會創(chuàng)建一個對象。下面的代碼段:>>>
class
ObjectCreator(object):…
pass…7將在內存中創(chuàng)建一個對象,名字就是ObjectCreator。這個對象(類)自身擁有創(chuàng)建對象(類實例)的能力,而這就是為什么它是一個類的原因。但是,它的本質仍然是一個對象,于是乎你可以對它做如下的操作:1)
你可以將它賦值給一個變量2)
你可以拷貝它3)
你可以為它增加屬性4)
你可以將它作為函數(shù)參數(shù)進行傳遞下面是示例:>>>
ObjectCreator
#
你可以打印一個類,因為它其實也是一個對象>>>
def
echo(o):…
o…>>>
echo(ObjectCreator)
#
你可以將類做為參數(shù)傳給函數(shù)>>>
(hasattr(ObjectCreator,
‘new_attribute’))Fasle8>>>
ObjectCreator.new_attribute
=
'foo'
#
你可以為類增加屬性>>>
hasattr(ObjectCreator,
'new_attribute')True>>>
ObjectCreator.new_attributefoo>>>
ObjectCreatorMirror
=
ObjectCreator
#
你可以將類賦值給一個變量>>>
ObjectCreatorMirror()<__main__.objectcreator
object=""
at=""
0x8997b4c="">9動態(tài)地創(chuàng)建類因為類也是對象,你可以在運行時動態(tài)的創(chuàng)建它們,就像其他任何對象一樣。首先,你可以在函數(shù)中創(chuàng)建類,使用class關鍵字即可。def
choose_class(name):…
if
name
==
'foo':…
class
Foo(object):…
pass…
return
Foo
#
返回的是類,不是類的實例…
else:…
class
Bar(object):…
pass…
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 準備單元 水滑梯的秘密 (教學設計)- 六年級上冊科學大象版
- 2025年度魚塘租賃與漁業(yè)資源保護合作協(xié)議
- 二零二五年度鐵路運輸公司試用期勞動合同匯編
- 二零二五年度自愿變更撫養(yǎng)權子女監(jiān)護權變更及財產分配協(xié)議
- 教育培訓包車配送服務協(xié)議
- 2025年度跨國婚姻解除及共同財產分配協(xié)議書
- 2025年度社區(qū)便利店經營管理權整體轉讓協(xié)議
- 2025年度智能家居產品研發(fā)期滿終止合同通知書
- 三位數(shù)除以兩位數(shù)綜合作業(yè)習題帶答案
- 二年級數(shù)學100以內三數(shù)加減法混合運算題競賽試題例題
- 英語單詞詞根
- 問題學生轉化策略課件
- GMP附錄計算機化系統(tǒng)整體及條款解讀
- 村光伏發(fā)電申請書
- 腰椎間盤突出癥中醫(yī)特色療法課件
- 施工現(xiàn)場專項消防安全檢查表
- 如何當好學校的中層干部
- 2022-2023學年廣東省佛山市順德區(qū)高三(下)模擬英語試卷
- 鋼結構廠房吊裝安裝監(jiān)理控制要點演示文稿
- 無權代理與表見代理
- 創(chuàng)傷的現(xiàn)場檢傷分類法傷情程的快速評估方法
評論
0/150
提交評論