物件的字串表示法
在 Python 中有兩個會回傳物件字串表示的特殊方法。當你對物件使用 print() 或 str() 時會呼叫 __str__();當你使用 repr()、在主控台直接輸出物件而未呼叫 print(),或當未定義 __str__() 時,則會呼叫 __repr__()。
__str__() 應該提供「對使用者友善」的物件描述輸出;而 __repr__() 應該回傳一個表示式,當該表示式被評估時會得到同一個物件,以確保程式碼可重現。
在這個練習中,你會繼續使用第 2 章的 Employee 類別。
本練習屬於課程
Python 物件導向程式設計入門
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
class Employee:
def __init__(self, name, salary=30000):
self.name, self.salary = name, salary
# Add the __repr__() method
____
emp1 = Employee("Amar Howard", 30000)
print(repr(emp1))
emp2 = Employee("Carolyn Ramirez", 35000)
print(repr(emp2))