如何使用print() 自訂類別實例的字串表示
列印類別的實例時,預設行為通常會顯示物件的內存位置。若要自訂字串表示形式並控制列印時顯示的內容,您可以實作兩種特殊方法: str 和 __repr__。
__str__:定義人類可讀的字串表示形式
str 方法定義了一般物件的字串表示形式 使用。當您在物件上呼叫 print() 或 str() 時,會呼叫它。透過重寫 __str__,您可以定義列印時顯示的自訂輸出。
__repr__:定義用於調試的字串表示形式
repr方法定義用於調試目的的字串表示形式。當您在物件上呼叫 repr() 或未定義 str__ 時,會呼叫它。 __repr 表示形式應該是計算結果為物件的有效 Python 表達式。
範例
要自訂類別實例的字串表示形式:
class Test: def __init__(self): self.a = 'foo' def __str__(self): return "member of Test" def __repr__(self): return "Test()"
在上面的範例中:
當您列印此實例時class:
t = Test() print(t)
它將在控制台上顯示“Test 成員”,提供自訂且有意義的表示。
以上是如何重寫`__str__`和`__repr__`來自訂類別實例的列印輸出?的詳細內容。更多資訊請關注PHP中文網其他相關文章!