我们以一个简单的类为例:
class Vector:
def __init__(self):
self.x = 1
self.y = 1
self.z = 1
我想给这个类一个名为 sum
的变量,这样当我这样做的时候
v = Vector()
v.sum
我得到了总和 x+y+z
(在本例中为 3)。当然,我可以很容易地创建一个类方法来执行此操作,但是我将不得不编写 v.sum()
而不是 v.sum
。有什么方法可以隐藏类在请求变量时实际上调用函数的事实吗?
提前致谢。
最佳答案
class Vector(object): # subclass object for new style class
def __init__(self):
self.x = 1
self.y = 1
self.z = 1
@property
def sum(self):
return self.x + self.y + self.z
>>> v = Vector()
>>> v.sum
3
关于python - 将类变量重定向到类函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16507348/