实验7 类和模块

user.py

 1 class User():
 2     count = 0
 3     def __init__(self, username='username', password='111', status='1'):
 4         self.username = username
 5         self.password = password
 6         self.status = status
 7         User.count += 1
 8 
 9     def __del__(self):
10         User.count -= 1
11 
12     def info(self):
13         if self.status == '1':
14             print(f"{self.username}, {self.password}, 账户正常")
15         else:
16             print(f"{self.username}, {self.password}, 账户被封禁")
17 
18     def modify_password(self):
19         for i in range(3):
20             old_password = input("旧密码: ")
21             if old_password == self.password:
22                 self.password = input("新密码: ")
23                 print("密码修改成功!")
24                 break
25             elif i == 2:
26                 print("账户已锁, 请稍后再试...")
27                 self.status = '0'
28             elif old_password != self.password:
29                 continue
30 
31     def show_count():
32         print(f"用户总数: {User.count}")
33 
34 
35 class Admin(User):
36     def __init__(self, username='Admin', password='999999', status='1'):
37         super().__init__(username, password, status)
38 
39     def info(self):
40         print("管理员账户: ")
41         super().info()42 
43     def reset_password(self, user):
44         user.password = input("请输入你要修改的密码: ")
45 
46     def ban_user(self, user):
47         user.status = '0'
48 
49     def unlock_user(self, user_name):
50         user_name.status = '1'

 

 

task5.py

 1 from user import User, Admin
 2 
 3 u1 = User('账户1', '0000', '1')
 4 u1.info()
 5 u1.modify_password()
 6 u1.info()
 7 
 8 admin1 = Admin('管理员1', '9999', '1')
 9 admin1.info()
10 User.show_count()
11 
12 admin1.reset_password(u1)
13 admin1.ban_user(u1)
14 u1.info()
15 admin1.unlock_user(u1)
16 u1.info()
17 User.show_count()

 

 

截图:

 

 

posted @ 2022-06-01 16:12  柚子西虹  阅读(57)  评论(3)    收藏  举报