Python 內置函數:type()

type() 是 Python 中的內置函數之一,既可以用來獲取對象的類型,也可以用來動態創建新類型。它是 Python 類型系統的核心工具,在調試、反射、元類編程等場景中廣泛應用。

一、函數語法

語法一:獲取對象類型

參數:

object:要檢查類型的對象。

返回值:

返回該對象所屬的類對象。例如 、 等 。

語法二:動態創建類型

參數:

name:新類型的名稱(字符串)。

bases:元組,表示新類型的基類(可以爲空元組表示無繼承)。

dict:映射對象(通常爲字典),定義新類型的屬性和方法。

返回值:

返回動態創建的類對象( ),本質上是 type 類型的實例 。

二、基礎用法示例

1、獲取對象類型

2、基於類型結果進行判斷

Python 內置的類對象類型有 int、float、str、bool、list、tuple、dict、set、bytes、complex、range 等。

3、判斷自定義類實例類型

提示:

pass 是。

三、進階技巧

1、動態創建類型(元編程)

type() 的三參數形式等價於使用 class 定義類。

2、與 isinstance() 比較

type() 檢查的是對象的精確類型,不會匹配父類類型。isinstance() 會考慮繼承關係。

3、調試輔助

打印變量的值和類型,方便定位問題。

四、補充說明

1、type 是元類

Python 中,所有新式類(包括內置類型)都是 type 的實例。

2、dict 參數可定義類內容

在動態創建類時,dict 參數中可以放類變量、方法等。

方法應定義爲函數對象,並在需要時接受 self 參數。

3、獲取類型 vs 判斷類型

如果只是爲了調試,可以直接 print(type(obj))。

如果要做類型判斷並考慮繼承,推薦使用 isinstance()。

小結

type() 既是類型查詢工具,也是動態類生成的核心機制。理解它的兩種用法及其與 isinstance() 的區別,對於深入掌握 Python 的類型系統和元類編程至關重要。

“點贊有美意,讚賞是鼓勵”