CommencerCommencer gratuitement

Accéder à des attributs inexistants

Il arrive que vous tentiez d’accéder à un attribut qui n’existe pas dans l’espace de noms d’un objet. Dans ce cas, Python lève généralement une AttributeError. Dans cet exercice, vous allez apprendre à gérer ce cas à l’aide d’une des méthodes magiques de Python. Amusez-vous bien !

Cet exercice fait partie du cours

Programmation orientée objet intermédiaire en Python

Afficher le cours

Instructions

  • Définissez une méthode à exécuter lorsqu’un attribut non défini dans l’espace de noms de BankAccount est référencé ; cette méthode doit prendre les paramètres self et name.
  • Ajoutez une logique à la méthode magique pour afficher un message suggérant que l’attribut référencé devrait être défini pour l’objet.
  • Créez un objet de la classe BankAccount, puis tentez d’accéder à l’attribut routing_number ; observez le résultat.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

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")
____.____
Modifier et exécuter le code