LoslegenKostenlos loslegen

Ändern von Klassenattributen

Du hast gelernt, wie man Klassenattribute definiert und wie man von Klasseninstanzen aus auf sie zugreift. Was passiert also, wenn du versuchst, einem Klassenattribut einen anderen Wert zuzuweisen, wenn du von einer Instanz darauf zugreifst?

Die Klasse Player aus der vorangegangenen Übung wurde vordefiniert, wie unten gezeigt:

class Player:

    MAX_POSITION = 10

    def __init__(self, position):

        if position <= Player.MAX_POSITION:

              self.position = position

        else:

              self.position = Player.MAX_POSITION

Diese Übung ist Teil des Kurses

Einführung in die objektorientierte Programmierung in Python

Kurs anzeigen

Anleitung zur Übung

  • Erstelle zwei Player Objekte: p1 und p2, mit den Positionen 9 bzw. 5.
  • Drucke p1.MAX_POSITION und p2.MAX_POSITION.
  • Weisen Sie 7 zu p1.MAX_POSITION zu.
  • Drucke p1.MAX_POSITION und p2.MAX_POSITION erneut aus.

Interaktive Übung

Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.

# 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
____
____
Code bearbeiten und ausführen