LoslegenKostenlos loslegen

Logik für Attribute implementieren

Die Klasse Player, die du zuvor erstellt hast, war ein guter Anfang, aber einer der Hauptvorteile von Attributen auf Klassenebene ist die Möglichkeit, die oberen und/oder unteren Grenzen der Daten einzuschränken.

In dieser Übung änderst du die Klassendefinition von Player, um zu verhindern, dass der Wert von position den Wert auf Klassenebene MAX_POSITION übersteigt.

Diese Übung ist Teil des Kurses

Einführung in die objektorientierte Programmierung in Python

Kurs anzeigen

Anleitung zur Übung

  • Definiere den __init__() Konstruktor mit zwei Argumenten, self und position.
  • Prüfe im Konstruktor, ob position kleiner oder gleich der Klassenebene MAX_POSITION ist; wenn ja, weise position zu self.position
  • Wenn position größer ist als die Klassenebene MAX_POSITION, ordne es dem Attribut .MAX_POSITION der Klasse zu.
  • Erstelle ein Player Objekt p mit einer Position von 6 und drucke dessen MAX_POSITION.

Interaktive Übung

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

class Player:
  MAX_POSITION = 10
  
  # Define a constructor
  ____ ____(____, ____):
    
    # Check if position is less than the class-level attribute value
    if ____ <= ____.____:
      ____.____ = ____
    
    # If not, set equal to the class-level attribute
    else:
      ____.____ = ____.____

# Create a Player object, p, and print its MAX_POSITITON
p = ____(____)
print(____.____)
Code bearbeiten und ausführen