python回顧 十一 物件管理

2022-09-05 12:09:08 字數 2074 閱讀 4949

__new__方法用於定義建立物件時執行的操作,__new__方法僅僅為使用者提供乙個建立物件時干預的入口,真正執行建立物件的操作由object類中的__new__方法完成

定義__new__方法是對object類中__new__方法的重寫,重寫該方法時必須再次呼叫object類中的__new__方法

__new__方法在建立物件時自動執行,無需手工執行呼叫該方法

del操作的實質是斷開變數與記憶體資料之間的引用,操作del執行後等同於對應變數未進行過定義

1,刪除定義的變數:功能等同於變數未定義

2,刪除儲存模型中的資料:將資料按照變數的形式看待,功能等同於未定義過對應的資料

列表資料報錯:索引不存在

元組物件報錯:元組物件不支援對項的刪除

字典物件報錯:鍵錯誤,鍵不存在

物件中的屬性:對應物件等同於該物件未定義過該屬性

__del__方法用於定義物件不存在任何引用時執行的操作。當物件斷開了與最後乙個變數之間的引用關係時,將執行該物件的__del__方法

1.當手工執行斷開變數與物件的最後乙個引用時執行,即del操作

2.當程式執行完畢時,所有變數對應的引用都斷開,此時執行,即退出程式

__del__方法在物件斷開與最後乙個變數之間的引用關係時自動執行,無需手工執行呼叫該方法

當兩個物件對應的引用位址相同時,稱這兩個物件是同乙個物件

物件名 is 物件名 或 變數名 is 變數名

資料 is 資料

注:判等操作的結果是true或false

3.3==與is的區別

==操作針對判定的內容不同,規則不同。例如數值性資料比較數值的大小,不考慮是整數還是小數。字串比較字串的內容是否相同,不考慮引用位址是否相同

is操作只針對位址進行判定,只要位址相同即返回true,否則返回false

控制乙個類只能建立出單個例項物件

1.定義的類變數要進行私有化,否則可以通過類名在類的外部訪問到

2.物件的判空操作使用is進行判定

python 物件管理

演示 class user def new cls,args,kwargs print user new method is running 建立物件由object完成 instance.obkect.new user return.instance 複製 new 方法建立物件時自動執行。覆蓋obj...

測試物件管理

1 uft中物件的概念 uft中的物件有兩個概念,乙個是測試物件,乙個是執行時物件 1 測試物件 test object,to 是uft定義的一些類,用它們代表被測應用的各種物件。2 執行時物件 runtime object,ro 是實際的被測應用物件,是測試執行過程中,to用來關聯的物件。2 uf...

物件管理資源

今天看了下effective c 的條款13 以物件管理資源,感覺十分有理,特此做一下筆記。假設我們使用乙個用來描述投資行為的程式庫,其中各式各樣的投資型別都繼承自乙個根類 investment 投資型別繼承體系中的root class class investment 這裡呢,我們進一步假設這個程...