I am trying to understand what Python’s descriptors are and what they are useful for. I understand how they work, but here are my doubts. Consider the following code:
class Celsius(object):
def __init__(self, value=0.0):
self.value = float(value)
def __get__(self, instance, owner):
return self.value
def __set__(self, instance, value):
self.value = float(value)
class Temperature(object):
celsius = Celsius()
-
Why do I need the descriptor class?
-
What is
instance
andowner
here? (in__get__
). What is the purpose of these parameters? -
How would I call/use this example?