Python類和物件 除錯與術語

2022-07-21 02:33:11 字數 1215 閱讀 3228

1.當我們開始使用物件的時候,你就容易遇到一些新的異常。如果你試圖讀取乙個不存在的屬性,就會得到乙個屬性錯誤:

>>> p = point()

>>> p.x = 3.0

>>> p.y = 4.0

>>> p.z          #沒有宣告,就直接讀取屬性p.z,會報錯屬性錯誤。

traceback (most recent call last):

attributeerror: 'point' object has no attribute 'z'

2.如果不確定乙個物件是什麼型別,可以使用type【問】一下:

>>> type(p)

3.還可以用 isinstance 函式來檢查一下乙個物件是否為某乙個類的例項:

>>> isinstance(p, point)

true

>>> isinstance(p, point)

traceback (most recent call last):

nameerror: name 'point' is not defined

4.如果不確定某一物件是否有乙個特定的屬性,可以用內建函式 hasattr:

>>> hasattr(p, 'x')

true

>>> hasattr(p, 'j')

false

hasattr函式的第乙個引數可以是任意乙個物件;第二個引數是乙個字串,就是要判斷是否存在的屬性名字。

5.用 try 語句也可以試驗乙個物件是否有你需要的屬性:

>>> try:

... except attributeerror:

這樣寫一些處理不同型別變數的函式就更容易了。

類: 使用者定義的型別。乙個類的宣告建立了乙個新的類的物件。

類的物件: 包含了使用者自定義型別相關資訊的乙個物件。可以用於建立類的乙個例項。

例項: 索引某乙個類的乙個物件。

例項化: 建立乙個新的物件。

屬性:乙個物件內附屬的數值的名字

內嵌物件: 乙個物件作為屬性儲存在另乙個物件內。

淺複製: 複製乙個物件中除了內嵌物件之外的所有引用;通過 copy 模組的 copy 函式來實現。

深複製: 複製乙個物件的所有內容,包括內嵌物件,以及內嵌物件中的所有內嵌物件等等;通過 copy 模組的 deepcopy 函式來實現。

類圖: 一種**,用於展示類與類中的屬性以及屬性的值。

結束。

Python 類與物件

引數 預設值 可變引數 關鍵字引數 命名關鍵字引數 返回值 python class student def init self,arg,kwargd 可變引數 arg kwargd if name in kwargd self.name kwargd name defmain s student ...

Python 類與物件

python是一種物件導向的程式語言。python中,幾乎所有東西都是乙個物件。物件有屬性和方法。類是用於建立物件的 藍圖 要建立類,請使用關鍵字class 示例 建立乙個名為myclass的類,其屬性名為x class myclass x 8現在可以使用myclass類建立物件 示例 建立乙個名為...

Python 類與物件

一.一 類 是對一群有相同特徵或者行為的事物的統稱,是抽象的,不可直接使用。二 物件 是由類創造出來的實體,可以直接使用。三 類與物件之間的關係 1.先有類再有物件 2.類只有乙個而物件可以有多個 四 類的設計 3要素 類名 大駝峰命名法 屬性 描述這類事物的特徵 方法 描述這類事物的具體行為 二....