IniziaInizia gratis

Rappresentazione testuale degli oggetti

In Python ci sono due metodi speciali che restituiscono una rappresentazione testuale di un oggetto. __str__() viene chiamato quando usi print() o str() su un oggetto, mentre __repr__() viene chiamato quando usi repr() su un oggetto, quando stampi l’oggetto in console senza chiamare print(), oppure al posto di __str__() se __str__() non è definito.

__str__() dovrebbe fornire un output “user-friendly” che descrive un oggetto, mentre __repr__() dovrebbe restituire un’espressione che, se valutata, ricrea lo stesso oggetto, garantendo la riproducibilità del tuo codice.

In questo esercizio continuerai a lavorare con la classe Employee del Capitolo 2.

Questo esercizio fa parte del corso

Introduzione alla programmazione orientata agli oggetti in Python

Visualizza il corso

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

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))
Modifica ed esegui il codice