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
Instructions
- Définissez le constructeur
__init__()avec deux arguments,selfetposition. - À l'intérieur du constructeur, vérifiez si
positionest inférieure ou égale àMAX_POSITIONau niveau de la classe ; si c'est le cas, affectezpositionàself.position. - Si
positionest supérieure àMAX_POSITIONau niveau de la classe, affectez-lui l'attribut.MAX_POSITIONde la classe. - Créez un objet
Playerpavec une position de6et affichez sa valeurMAX_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(____.____)