IniziaInizia gratis

Implementare la logica per gli attributi

La classe Player che hai creato in precedenza era un buon inizio, ma uno dei vantaggi chiave degli attributi a livello di classe è la possibilità di limitare i valori massimi e/o minimi dei dati.

In questo esercizio modificherai la definizione della classe Player per impedire che il valore di position superi il valore MAX_POSITION definito a livello di classe.

Questo esercizio fa parte del corso

Introduzione alla programmazione orientata agli oggetti in Python

Visualizza il corso

Istruzioni dell'esercizio

  • Definisci il costruttore __init__() con due argomenti, self e position.
  • All'interno del costruttore, verifica se position è minore o uguale a MAX_POSITION a livello di classe; in tal caso, assegna position a self.position.
  • Se position è maggiore di MAX_POSITION a livello di classe, assegnalo all'attributo .MAX_POSITION della classe.
  • Crea un oggetto Player p con una posizione pari a 6 e stampa il suo MAX_POSITION.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

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(____.____)
Modifica ed esegui il codice