python作业day1—用户登陆
2018-06-18 02:25:09来源:未知 阅读 ()
跟着老男孩培训写的第一次作业
需求:
1、用户可以通过用户名和密码登陆;
2、密码输入错误三次后即锁定用户
3、把用户名、密码、锁定后的用户放在文件里
4、如果没有该用户提示还没有注册
5、使用锁定的用户登陆会提示此用户已经被锁定了
1 #! /usr/bin/env python 2 # -*- coding:utf-8 -*- 3 4 username = raw_input("username: ") 5 password = raw_input("password: ") 6 7 8 # 把用户文件放到字典里面,更加容易匹配 9 def read_config(): 10 with open(r'E:\coding\oldboy\practice_day1\user_info', 'r') as f: 11 user_dict={} 12 for line in f.readlines(): 13 user_info = line.strip().split('=') 14 user_dict[user_info[0]] = user_info[1] 15 # user_dict['password'] = user_info[3] 16 return user_dict 17 18 19 # 检查输入的用户是否在黑名单里,如果在,显示已经在黑名单里面 20 def chack_locked(): 21 with open(r'E:\coding\oldboy\practice_day1\lock_info', 'r') as f_lock_info: 22 if username in f_lock_info.read(): 23 print("You are locked") 24 exit(0) 25 26 27 # 密码输入错误后重新输入,超过三次则会停止输入密码 28 def input_again(): 29 count = 0 30 while count < 2: 31 print("It is wrong password") 32 password = raw_input("password again: ") 33 if password in read_config()['password']: 34 print('congratulition') 35 break 36 else: 37 count += 1 38 else: 39 print("Sorry") 40 return count 41 42 43 # 如果输入密码错误三次,则自动把用户添加到黑名单里面 44 def locked(count): 45 if count == 2: 46 with open('E:\coding\oldboy\practice_day1\lock_info', 'a') as f_lock: 47 f_lock.write(username) 48 49 50 if __name__ == '__main__': 51 chack_locked() 52 user_dict = read_config() 53 if username == user_dict['username'] and password == user_dict['password']: 54 print("Welcome to login") 55 elif username != user_dict['username']: 56 print("No user, please sign up") 57 elif username == user_dict['username'] and password != user_dict['password']: 58 count = input_again() 59 locked(count)
仍然存在的问题:
1、用户文件里无法添加多个用户,只能有一个用户登陆,把用户存放字典时,因为字典的键唯一,所以只能保存后面的用户信息
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- python3基础之“术语表(2)” 2019-08-13
- python3 之 字符串编码小结(Unicode、utf-8、gbk、gb2312等 2019-08-13
- Python3安装impala 2019-08-13
- 小白如何入门 Python 爬虫? 2019-08-13
- python_字符串方法 2019-08-13
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash