Lezioni di Python – 7.7 Properties

Lezioni di Python - 7.7 Le properties

Le proprietà

Le proprietà forniscono un modo di personalizzare l’accesso agli attributi dell’istanza. Per crearli, si utilizza il decoratore @property messo prima del metodo. Il loro scopo è quello di definire attributi read-only (non possono essere modificati).

class Pizza:
    def __init__(self, toppings):
        self.toppings = toppings
    @property
    def pineapple_allowed(self):
        return False

pizza = Pizza(["cheese","tomato"])
print(pizza.pineapple_allowed)
pizza.pineapple_allowed = True 

Le proprietà possono essere impostate anche per definire le funzioni getter/setter. La funzione setter imposta il valore della proprietà corrispondente. La funzione getter ne ottiene il valore

Per definire un setter, hai bisogno di usare un decoratore con lo stesso nome della proprietà, seguito da un punto e la clausola setter. La stessa regola vale per getter.

Vai a Lezione 7.6 – Metodi di classe e metodi statici

Fine corso di Python

Lascia un commento