我的 Python 类有一些变量需要在第一次调用时进行计算。后续调用应该只返回预先计算的值。
除非用户确实需要它们,否则我不想浪费时间做这项工作。那么有没有一种干净的 Pythonic 方式来实现这个用例呢?
我最初的想法是第一次使用 property() 调用一个函数,然后覆盖变量:
class myclass(object):
def get_age(self):
self.age = 21 # raise an AttributeError here
return self.age
age = property(get_age)
谢谢