Python中的__repr__()方法小結
在 Python 中,__repr__()
是一個特殊方法(magic method),用于定義對象的字符串表示形式。當你調用內置函數 repr()
或使用 str()
函數來獲取對象的字符串表示時,實際上是調用了對象的 __repr__()
方法。
下面是一個簡單的例子,演示了 __repr__()
的用法:
class Person: def __init__(self, name, age): self.name = name self.age = age def __repr__(self): return f"Person(name={self.name}, age={self.age})" # 創(chuàng)建一個Person對象 person = Person("Alice", 30) # 調用repr()函數獲取對象的字符串表示 representation = repr(person) # 輸出結果 print(representation) # 輸出 Person(name=Alice, age=30)
在這個例子中,Person
類實現了 __repr__()
方法,返回一個字符串,描述了 Person
對象的屬性。當我們調用 repr(person)
時,實際上就是調用了 person.__repr__()
。
在實際開發(fā)中,實現 __repr__()
方法對于調試和日志記錄非常有用。它提供了一個人類可讀的字符串表示形式,有助于理解對象的狀態(tài)。當你在交互式環(huán)境中輸入對象名稱并按回車時,也會調用 __repr__()
方法顯示對象的字符串表示。
需要注意的是,__repr__()
方法應該返回一個字符串,這個字符串應該是一個可以通過 eval()
函數重新創(chuàng)建相同對象的表達式。如果沒有定義 __repr__()
方法,Python 會嘗試調用 __str__()
方法來獲取對象的字符串表示,如果也沒有定義 __str__()
,則會返回默認的字符串表示。
到此這篇關于Python中的__repr__()方法小結的文章就介紹到這了,更多相關Python __repr__() 內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
python?函數、變量中單下劃線和雙下劃線的區(qū)別詳解
本文主要介紹了python?函數、變量中單下劃線和雙下劃線的區(qū)別詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2023-01-01