实验任务七

实验任务5

user.py

class User:
    '''用户类
    数据:用户名,密码,账号状态
    操作:现实账户信息,修改密码'''
    def __init__(self,name = 'guest',password = '111111',status = 1):
        self._name = name
        self._password = password
        self._status = status

    def info(self): #显示账户信息
        print('用户名,用户密码,账号状态:')
        if self._status == 1:
            print(f'{self._name},{self._password},账号正常')
        if self._status == 0:
            print(f'{self._name},{self._password},账号异常')

    def modify_password(self): #修改密码
        account = 0
        while True:
            old_password = input('输入旧密码:')
            if old_password == self._password and len(old_password) == 6:
                self._password = input('输入新密码:')
                print('密码修改成功')
                break
            if old_password != self._password or len(old_password) != 6:
                print('密码错误,请重新输入')
                account +=1
            if account == 3:
                self._status = 0
                print('账户已锁,请稍后再试')
                break

class Admin(User):
    '''管理员类,继承自用户
    新增操作 :重置密码,封禁账户,解封账户'''
    def __init__(self,name = 'admin',password = '999999',status = 1):
        super().__init__(name,password,status)
        self._name_admain = name
        self._password_admain = password
        self._status_admain = status

    def info(self): #重写父类
        print('用户名,用户密码,账号状态:')
        if self._status_admain == 1:
            print(f'{self._name_admain},{self._password_admain},账号正常')
        if self._status_admain == 0:
            print(f'{self._name_admain},{self._password_admain},账号异常')
    def reset_password(self): #重置密码
        self._password_admain = '111111'
        print('重置成功')

    def ban_user(self): #封禁用户
        self._status_admain = 0
        print('封禁成功')

    def unblock_user(self): #解封用户
        self._status_admain = 1
        print('解封成功')

#测试类
def main():
    a1 = User()
    a1.info()
    a1.modify_password()
    a1.info()

    a2 = Admin()
    a2.info()
    a2.reset_password()
    a2.info()
    a2.ban_user()
    a2.info()
    a2.unblock_user()
    a2.info()
if __name__ == '__main__':
    main()

task5.py

from user import User as user, Admin as admin
user1 = user('Joteran','010101')
user1.info()
user1.modify_password()
user1.info()

user2 = admin('Joruno','mdmdmd')
user2.info()
user2.reset_password()
user2.info()
user2.ban_user()
user2.info()
user2.unblock_user()
user2.info()

 

 

posted @ 2022-06-01 19:49  llzyj  阅读(21)  评论(1编辑  收藏  举报