Ä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
Anleitung zur Übung
- Erstelle zwei
Player
Objekte:p1
undp2
, mit den Positionen9
bzw.5
. - Drucke
p1.MAX_POSITION
undp2.MAX_POSITION
. - Weisen Sie
7
zup1.MAX_POSITION
zu. - Drucke
p1.MAX_POSITION
undp2.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
____
____