ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

实验7 类和模块

2022-06-01 21:01:37  阅读:119  来源: 互联网

标签:status name self 实验 user 模块 x2 password


 1 '''
 2 用户账户
 3 数据:用户名,密码
 4 操作:显示账户信息,修改密码
 5 '''
 6 
 7 class User:
 8     def __init__(self, name='guest', password='111111', status=1):
 9         self.name = name
10         self.password = password
11         self.status = status
12 
13     def info(self):
14         if self.status == 0:
15             print('您的账户已锁,请稍后再试')
16         else:
17             print('账户信息:用户名,密码')
18             print(f'{self.name},{self.password}')
19 
20     def modify_password(self):
21         if self.status == 0:
22             print('您的账户已锁,请稍后再试')
23         else:
24             for i in range(3):
25                 old_password = input('输入旧密码:')
26                 if old_password == self.password:
27                     new_password = input('输入新密码:')
28                     self.password = new_password
29                     print('密码修改成功')
30                     break
31                 else:
32                     print('密码输入错误')
33             else:
34                 self.status = 0
35                 print('账户已锁,请稍后再试')
36 
37 
38 class Admin(User):
39     '''
40     管理员账户,继承自User
41     数据:用户名,密码
42     操作:重置密码,封禁账户,解封账户
43     '''
44     def __init__(self, name='admin', password='999999', status=1):
45         super().__init__(name, password, status)
46 
47     def reset_password(self, user_name):
48         if self.name == user_name:
49             self.password = '999999'
50 
51     def ban_user(self, user_name):
52         if self.name == user_name:
53             self.status = 0
54 
55     def unblock_user(self, user_name):
56         if self.name == user_name:
57             self.status = 1
58 
59 
60 def main():
61     x1 = User('Cooper','75641')
62     x1.info()
63     x1.modify_password()
64 
65     x2 = Admin('Jock','674577')
66     x2.info()
67     x2.reset_password('Cooper')
68     x2.info()
69     x2.reset_password('Jock')
70     x2.info()
71     x2.ban_user('Jock')
72     x2.unblock_user('Jock')
73 
74 if __name__ == '__main__':
75     main()
 1 from user import User, Admin
 2 
 3 x1 = User('Joe', '5006692')
 4 x1.info()
 5 x1.modify_password()
 6 x1.info()
 7 
 8 x2 = Admin('Bob', '5002311')
 9 x2.reset_password('Bob')
10 x2.ban_user('Bob')
11 x2.unblock_user('Bob')

 

 

 

标签:status,name,self,实验,user,模块,x2,password
来源: https://www.cnblogs.com/kk-xx/p/16335629.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有