Åtkomst till attribut som inte finns
Ibland försöker man komma åt ett attribut som inte finns i ett objekts namnrymd. I sådana fall kastas vanligtvis ett AttributeError. I den här övningen får du öva på att hantera det scenariot med hjälp av en av Pythons magiska metoder.
Den här övningen är en del av kursen
Objektorienterad programmering i Python – fortsättningskurs
Övningsinstruktioner
- Definiera en metod som ska anropas när man refererar till ett attribut som inte är definierat i
BankAccount-namnrymden. Metoden ska ta parametrarnaselfochname. - Lägg till logik i den magiska metoden som skriver ut ett meddelande och föreslår att det refererade attributet bör ställas in på objektet.
- Skapa ett objekt av klassen
BankAccountoch försök att komma åt attributetrouting_number. Observera utdata.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
class BankAccount:
def __init__(self, account_number):
self.account_number = account_number
# Define a magic method to handle references to attribute
# not in an object's namespace
def ____(____, ____):
# Output a message to instruct further action
print(f"""{____} is not defined in BankAccount object.
Please define this attribute if needed.""")
# Create a BankAccount object, reference routing_number
checking_account = ____("123456")
____.____