CommencerCommencer gratuitement

Implémenter une logique pour les attributs

La classe Player que vous avez créée précédemment était une bonne base, mais l'un des principaux avantages des attributs au niveau de la classe est de pouvoir limiter les bornes supérieure et/ou inférieure des données.

Dans cet exercice, vous allez modifier la définition de la classe Player pour empêcher position de dépasser la valeur MAX_POSITION définie au niveau de la classe.

Cet exercice fait partie du cours

Introduction à la programmation orientée objet en Python

Afficher le cours

Instructions

  • Définissez le constructeur __init__() avec deux arguments, self et position.
  • À l'intérieur du constructeur, vérifiez si position est inférieure ou égale à MAX_POSITION au niveau de la classe ; si c'est le cas, affectez position à self.position.
  • Si position est supérieure à MAX_POSITION au niveau de la classe, affectez-lui l'attribut .MAX_POSITION de la classe.
  • Créez un objet Player p avec une position de 6 et affichez sa valeur MAX_POSITION.

Exercice interactif pratique

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

class Player:
  MAX_POSITION = 10
  
  # Define a constructor
  ____ ____(____, ____):
    
    # Check if position is less than the class-level attribute value
    if ____ <= ____.____:
      ____.____ = ____
    
    # If not, set equal to the class-level attribute
    else:
      ____.____ = ____.____

# Create a Player object, p, and print its MAX_POSITITON
p = ____(____)
print(____.____)
Modifier et exécuter le code