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
Istruzioni dell'esercizio
- Definisci il costruttore
__init__()con due argomenti,selfeposition. - All'interno del costruttore, verifica se
positionè minore o uguale aMAX_POSITIONa livello di classe; in tal caso, assegnapositionaself.position. - Se
positionè maggiore diMAX_POSITIONa livello di classe, assegnalo all'attributo.MAX_POSITIONdella classe. - Crea un oggetto
Playerpcon una posizione pari a6e stampa il suoMAX_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(____.____)