def __get__(self, instance, owner):
    if (instance is None):
        return self
    value = self.function(instance)
    setattr(instance, self.function.__name__, value)
    return value
def __get__(self, instance, owner):
    if (instance is None):
        return self
    value = self.function(instance)
    setattr(instance, self.function.__name__, value)
    return value