Ändra klassattribut
Du har lärt dig hur man definierar klassattribut och hur man kommer åt dem från klassinstanser. Men vad händer om du försöker tilldela ett nytt värde till ett klassattribut via en instans?
Klassen Player från föregående övning är fördefinierad enligt nedan:
class Player:
MAX_POSITION = 10
def __init__(self, position):
if position <= Player.MAX_POSITION:
self.position = position
else:
self.position = Player.MAX_POSITION
Den här övningen är en del av kursen
Introduktion till objektorienterad programmering i Python
Övningsinstruktioner
- Skapa två
Player-objekt:p1ochp2, med positionerna9respektive5. - Skriv ut
p1.MAX_POSITIONochp2.MAX_POSITION. - Tilldela
7tillp1.MAX_POSITION. - Skriv ut
p1.MAX_POSITIONochp2.MAX_POSITIONigen.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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
____
____