030323特殊方法與屬性02_第1頁
030323特殊方法與屬性02_第2頁
030323特殊方法與屬性02_第3頁
030323特殊方法與屬性02_第4頁
030323特殊方法與屬性02_第5頁
已閱讀5頁,還剩16頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

Python進階班教室講師:佳能時間:2018年3月教學監督熱線教學監督熱線02030105知識點一:類的私有化知識點三:字符串表示知識點四:屬性訪問知識點五:特殊屬性本節知識點04知識點二:初始化、析構類的私有屬性和方法對于Python中的屬性和方法,可以通過下劃線”_”來實現一定程的私有化。“_”:以單下劃線開頭只能允許其本身與子類進行訪問,(起到一個保護的作用)“__”:雙下劃線的表示的是私有類型的變量,只允許在本類中訪問。_className__xxxpython中私有更多的是一種規范/約定,不沒有真正達到限制的目的階段二初始化、析構教學監督熱線“初始化”問題引入0102問題一:能否在實例化的時候就初始化?問題二:這樣有什么意義?從面向對象的角度考慮:一個孩子出生,就有性別還是出生以后再給他一個性別“初始化”特殊方法在Python中有很多以雙下劃線開頭且以雙下劃線結尾的固定方法。他們會在特定的時機被觸發執行。__init__就是其中之一,它會在實例化之后自動被調用。以完成實例的初始化。再來看一個__del__的例子程序結束,系統會自動回收資源。調用對象中的__del__方法階段三字符串表示教學監督熱線對使用者使用友好的__str__對開發者調試友好的__repr__向使用者提供盡可能簡潔且有用的信息。向開發者提供接近創建時的信息。直接輸出實例對象print函數會輸出__str__的返回值。如果沒有定義__str__,會輸出__repr__的返回值。在shell模式下展示__repr__的返回值。__str__與__repr__該如何抉擇strrepr盡可能的提供簡潔且有用的信息。讓用戶盡可能吸收到必要的信息。盡可能向開發者提供創建該對象時的必要信息。階段四“屬性操作”內置函數教學監督熱線getattr/hasattr/setattr/delattrdelattr() #刪除對象屬性(刪除器)getattr() #得到對象的某個屬性值或方法(獲取器)setattr() #給對象添加某個屬性值(設置器)hasattr() #判斷對象object是否包含某個屬性和方法hasattr() #判斷對象object是否包含某個屬性和方法getattr() #得到對象的某個屬性值或方法(獲取器)setattr() #給對象添加某個屬性值(設置器)delattr() #刪除對象屬性(刪除器)階段五其他常用的特殊屬性教學監督熱線其他需要了解的特殊屬性特殊屬性簡單描述__name__當文件是被調用時,__name__的值為模塊名當文件被執行時,__name__的值為‘__main__’__class__一個類實例所屬的類對象type()__doc__文檔字符串__dict__存儲了對象屬性的字典在你的作業里,寫下這些東西的作用__init__()__del__()__str__()__repr__()setattr()delattr()__n

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論