CommencerCommencer gratuitement

Modifier des attributs de classe

Vous avez appris à définir des attributs de classe et à y accéder depuis des instances. Que se passe-t-il si vous essayez d’attribuer une autre valeur à un attribut de classe en y accédant depuis une instance ?

La classe Player de l’exercice précédent a été prédéfinie, comme ci-dessous :

class Player:
    MAX_POSITION = 10
    def __init__(self, position):
        if position <= Player.MAX_POSITION:
              self.position = position
        else:
              self.position = Player.MAX_POSITION

Cet exercice fait partie du cours

Introduction à la programmation orientée objet en Python

Afficher le cours

Instructions

  • Créez deux objets Player : p1 et p2, avec des positions de 9 et 5 respectivement.
  • Affichez p1.MAX_POSITION et p2.MAX_POSITION.
  • Affectez 7 à p1.MAX_POSITION.
  • Affichez à nouveau p1.MAX_POSITION et p2.MAX_POSITION.

Exercice interactif pratique

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

# Create Players p1 and p2
p1 = ____
p2 = ____

print("MAX_POSITION of p1 and p2 before assignment:")
# Print p1.MAX_POSITION and p2.MAX_POSITION
____
____

# Assign 7 to p1.MAX_POSITION
____

print("MAX_POSITION of p1 and p2 after assignment:")
# Print p1.MAX_POSITION and p2.MAX_POSITION
____
____
Modifier et exécuter le code