Migliori pratiche di proprietà Python [chiuso]

4

C'è qualche situazione in cui ha senso definire una proprietà python, dove ottenere (non settare) farebbe sorgere un'eccezione? Non penso che questo accada mai per i campi delle classi, quindi la domanda.

O è sempre meglio in questi casi utilizzare un metodo invece?

    
posta simonzack 19.09.2014 - 19:57
fonte

1 risposta

2

Ho creato proprietà che generano eccezioni in situazioni in cui non volevo che __init__ generasse eccezioni e / o volevo ritardare l'elaborazione.

class Identifier:

    def __init__(self, value):
        self._value = value

    @property
    def prefix(self):
        # ...
        # parse prefix from self._value
        # raise ValueError is provided value cannot be parsed
        # ...
        return prefix

    @property
    def suffix(self):
        # ...
        # parse suffix from self._value
        # raise ValueError is provided value cannot be parsed
        # ...
        return suffix
    
risposta data 19.09.2014 - 20:07
fonte

Leggi altre domande sui tag