(类的继承)将类的实例作为属性引用时报错参数缺失要怎么修改?


class Users():
    
    def __init__(self,name):
        
        self.name=name
        self.login_attempts=0
        
    def increment_login_attempts(self):
        self.login_attempts+=1
        
    def reset_login_attempts(self):
        self.login_attempts=0
        
class Privileges():
    
    def __init__(self,name,privileges):
        
        self.privieges=privileges
        self.name=name
        
    def show_privileges(self):
        print(f'{self.name}的权限包括:'+','.join(self.privieges))
        
class Admin(Users):
    
    def __init__(self,name,privileges):
        super().__init__(name)
        self.privileges=Privileges()

privileges=['show_users','add_users','modify_users','delete_users']

admin_2=Admin('张涛',privileges)
admin_2.privileges.show_privileges()

我想实现的是把权限单独写一个类(不同岗位的人权限不一样),然后被Users的子类如Admin等等不同岗位类型的用户调用,打印相应人员的权限,要怎么实现呢?上面是我写的代码,从报错来看应该是缺少相应的参数传入,但是我不太知道应该怎么修改,还请各位大佬帮助,非常感谢!!!


class Users:
    def __init__(self, name):
        self.name = name
        self.login_attempts = 0

    def increment_login_attempts(self):
        self.login_attempts += 1

    def reset_login_attempts(self):
        self.login_attempts = 0


class Privileges:
    def __init__(self, name, privileges):
        self.privieges = privileges
        self.name = name

    def show_privileges(self):
        print(f'{self.name}的权限包括:' + ','.join(self.privieges))


class Admin(Users):
    def __init__(self, name, privileges):
        super().__init__(name)
        self.privileges = Privileges(name, privileges)


privileges = ['show_users', 'add_users', 'modify_users', 'delete_users']
admin_2 = Admin('张涛', privileges)
admin_2.privileges.show_privileges()

但是目前看继承的父类没有发挥作用,不太清楚你继承的父类是想做什么功能。

self.privileges=Privileges(name, privileges)