Zacznij terazZacznij za darmo

Zmiana atrybutów klasy

Wiesz już, jak definiować atrybuty klasy i jak uzyskiwać do nich dostęp z poziomu instancji. Co się jednak stanie, jeśli spróbujesz przypisać nową wartość do atrybutu klasy, odwołując się do niego przez instancję?

Klasa Player z poprzedniego ćwiczenia jest już zdefiniowana, jak pokazano poniżej:

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

To ćwiczenie jest częścią kursu

Wprowadzenie do programowania obiektowego w Pythonie

Zobacz kurs

Instrukcje do ćwiczenia

  • Utwórz dwa obiekty klasy Player: p1 i p2, z pozycjami odpowiednio 9 i 5.
  • Wyświetl p1.MAX_POSITION i p2.MAX_POSITION.
  • Przypisz wartość 7 do p1.MAX_POSITION.
  • Wyświetl ponownie p1.MAX_POSITION i p2.MAX_POSITION.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# 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
____
____
Edytuj i uruchom kod