Zacznij terazZacznij za darmo

Reprezentacja obiektów jako ciągi znaków

W Pythonie istnieją dwie specjalne metody zwracające reprezentację obiektu w postaci ciągu znaków. __str__() jest wywoływana, gdy używasz print() lub str() na obiekcie, natomiast __repr__() – gdy używasz repr(), gdy wypisujesz obiekt w konsoli bez print(), albo zamiast __str__(), jeśli ta ostatnia nie jest zdefiniowana.

__str__() powinna zwracać czytelny, przyjazny dla użytkownika opis obiektu, natomiast __repr__() powinna zwracać wyrażenie, które po obliczeniu odtworzy ten sam obiekt, zapewniając tym samym powtarzalność kodu.

W tym ćwiczeniu będziesz dalej pracować z klasą Employee z rozdziału 2.

To ćwiczenie jest częścią kursu

Wprowadzenie do programowania obiektowego w Pythonie

Zobacz kurs

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

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))
Edytuj i uruchom kod