【发布时间】:2019-05-02 18:32:59
【问题描述】:
看看这段代码sn-p:
class Face():
pass
class Cube():
def __init__(self):
self.faces = {
'front': Face(1),
...
}
@property
def front(self):
return self.faces['front']
@front.setter
def front(self, f):
pass
我已经为所有的面创建了 getter 和 setter。有没有办法让这段代码更紧凑,也许是通过动态创建 getter 和 setter?
【问题讨论】:
-
为什么你把'front'放在字典里而不是你的Cube类的直接属性?那么就不需要属性了。
-
@CorentinLimier 我假设 OP 没有在 self.faces 中显示他们想要的键的完整 setter 和 getter 逻辑。
标签: python oop dynamic properties