1 class User:
2 count=0
3
4 def __init__(self,name='guest',password='111111',status=1):
5 User.count+=1
6 self.name=name
7 self.password=password
8 self.status=statue
9 def info(self):
10 if self.status==1:
11 print(f'{self.name},{self.password},账户正常')
12 elif self.status==0:
13 print(f'{self.name},{self.password},账户异常')
14
15 def modify_password(self):
16 old=input('输入旧密码:')
17 if old==self.password:
18 new=input('输入新密码:')
19 self.password=new
20 print('新密码修改成功')
21 else:
22 i=0
23 while i<=3:
24 old=input('输入旧密码:')
25 if old == self.password:
26 new = input('输入新密码:')
27 self.password = new
28 print('新密码修改成功')
29 break
30 else:
31 i=i+1
32 if i==3:
33 print('账户已锁,请稍后再试')
34 self.status=0
35
36 @classmethod
37 def show_count(cls):
38 print(f"用户总数:{User.count}")
39
40 def __del__(self):
41 User.count -= 1
42
43
44 class Admin(User):
45 def __init__(self,name='admin',password='999999',status=1):
46 super().__init__(name,password,status)
47
48 def ban_user(self,user):
49 user.status=0
50
51 def unblock_user(self,user):
52 user.status=1
53
54 def reset_password(self,user):
55 user.modify_password()
56
57 if __name__ == "__main__":
58 u1 = User()
59 u1.info()
60 admin1 = Admin()
61 admin1.info()
62 User.show_count()
63 admin1.ban_user(u1)
64 u1.info()
65 admin1.unblock_user(u1)
66 u1.info()
67 admin1.reset_password(u1)
68 del u1
69 User.show_count()
![]()