我是编程新手,所以我真的不知道我在这方面搞砸了。任何线索都将不胜感激。
class User:
def __init__(self, first_name, last_name):
self.first_name = first_name
self.last_name = last_name
def describe_user(self):
print(f"My name is {self.first_name.title()} {self.last_name.title()}")
def greet(self):
print(f"Welcome {self.first_name.title()} {self.last_name.title()}")
class Privileges:
def __init__(self, CanBanUser, CanDeletePost, CanAddPost):
self.canbanuser = CanBanUser
self.candeletepost = CanDeletePost
self.canaddpost = CanAddPost
class Admin(User):
def __init__(self, first_name, last_name):
super().__init__(first_name, last_name)
self.privileges = Privileges()
def print(self):
print(f"{self.first_name.title()} {self.last_name.title()}n Can Ban User: {self.privileges.canbanuser}"
f"nCan delete post: {self.privileges.candeletepost}n Can add post: {self.privileges.canaddpost}.")
priv = Privileges('Yes', 'Yes2', 'Yes3')
cla = Admin('Jan Lancelot', 'Mailig')
cla.print()
在第19行中,您正在实例化Privileges()
,但没有传递3个必需的参数。
self.privileges = Privileges()
如果要使用上面创建的Privileges()
实例(priv = Privileges('Yes', 'Yes2', 'Yes3')
(,则需要使Admin
能够接受构造函数中Privilege
类的对象,即
class Admin(User):
def __init__(self, first_name, last_name, privileges):
super().__init__(first_name, last_name)
self.privileges = privileges # of type Privileges