勵志

勵志人生知識庫

python魔法方法

Python魔法方法(Magic Methods)是在Python中以雙下劃線開頭和結尾的方法,用於在類中實現特殊功能。這些方法可以用於覆蓋或擴展Python的內置操作,如列印輸出、算術運算、比較操作等。常見的魔法方法包括:

__init__(self, kwargs)。構造方法,用於初始化新創建的對象實例。

__new__(cls, kwargs)。類的工廠方法,用於創建類的新實例。

__del__(self)。析構方法,當對象被銷毀或垃圾回收時調用。

__str__(self)。返回表示對象的字元串,用於print語句。

__repr__(self)。返回對象的官方字元串表示,用於解釋器的互動模式。

__add__(self, other)。實現對象間的加法運算。

__eq__(self, other)。實現對象間的相等比較。

__getattr__(self, name)。定義當用戶試圖訪問一個不存在的屬性時的行為。

__setattr__(self, name, value)。定義當用戶為一個屬性賦值時的行為。

__delattr__(self, name)。定義當用戶試圖刪除一個屬性時的行為。

__getattribute__(self, name)。定義當訪問對象的屬性時的行為。

__iter__(self)和__next__(self)。使對象可疊代,支持for循環。

__enter__(self)和__exit__(self, exc_type, exc_val, exc_tb)。支持with語句,用於資源管理。

這些魔法方法允許開發者自定義類的行為,以便更好地與Python的語言特性集成。