我得到了属性错误,但我不明白。。。。在
class User():
def __init__(self, first, last, age):
self.first = first
self.last = last
self.age = age
self.login_attempt = 0
class Admin(User):
def __init__(self, first, last, age):
super().__init__(first, last, age)
self.privilages = Privilages()
class Privilages():
def __init__(self, privilages = ''):
self.privilages = []
def show_privilages(self):
print("There are the privilages... : ")
if self.privilages:
for privilage in self.privilages:
print("- " + privilage)
else:
print("The user has no privilages. ")
sarah.privilages = ['can add post', 'can delete post']
sarah.privilages.show_privilages()
我不知道我在这里遗漏了什么,我用循环来检查列表并将其打印出来,但是我一直收到错误消息“'list'对象没有属性'show'u privileges'”
您将一个列表分配给}方法来初始化它的
sarah.privilages
,因此它肯定没有show_privilages
方法。您应该使Admin
的__init__
方法接受一个特权列表作为参数,这样它就可以传递给Privilages
的{privilages
属性:该输出:
^{pr2}$相关问题 更多 >
编程相关推荐