在某些情况下,我希望在类创建时使用实例方法。你知道吗
我只想在权限列表中使用self..这是我的问题
但它不起作用。这是解决问题的方法吗?你知道吗
class PermissionChecker(object):
# how to use self in class create time.
permissions = [self.is_superuser(), self.is_god()]
def is_superuser(self):
# use self.property just like self.name...
return True
def is_god(self):
return True
class Child(PermissionChecker):
permissions = PermissionChecker.permissions + [self.is_coder(),]
def is_coder(self):
return True
看起来您混淆了术语
attribute
和property
;您不能在类定义本身中使用self
,它只对方法可用。你知道吗我想你在找^{} descriptor :
通过使用
property
(上面用作@
装饰符),可以将方法转换为属性:每次对实例访问
.permissions
属性时,都会调用permissions
方法。你知道吗或者,在
__init__
初始值设定项中设置列表:看起来你想提供一处房产。可以这样做:
相关问题 更多 >
编程相关推荐