python学习之路——第三弹 (作业篇第一题)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python学习之路——第三弹 (作业篇第一题)相关的知识,希望对你有一定的参考价值。
作业一:编写登录接口
1.输入用户名密码
2.认证成功后显示欢迎信息
3.输错三次后锁定。
所需知识点 文件基本读写操作,循环,列表,字典
上面的作业题是在学习完数据类型和简单的文件操作之后布置的,所以这个时间节点需要利用已有的知识完成。
作业一思路:
输入用户名密码----输入用raw_input--有个地方存储了用户名和密码,并且用户名密码一一对应--字典或者文件
输错三次后锁定--三次用循环--锁定用存储用户名的方式--列表,字典,文件
成功错误--判断
所以整体代码设计如下 :
#/usr/bin/env python #coding:utf-8 ‘‘‘ 1.输入用户名密码 2.认证成功后显示欢迎信息 3.输错三次后锁定 ‘‘‘ #输入用户名密码 while True: #获取所有用户名和其密码 userDict = {} with open(‘userLogin.txt‘,‘r‘) as f: for line in f.readlines(): L = line.strip(‘\\n‘).split(‘,‘) userDict[L[0]] = L[1] #获取所有被锁定用户名 userList = [] with open(‘blackList.txt‘,‘r‘) as f: for line in f.readlines(): userList.append(line.strip(‘\\n‘)) name = raw_input(‘用户名 >>‘).strip() passwd = raw_input(‘密码 >>‘).strip() if name in userList: print(‘这个账号被锁定了,请换个账号重新登录‘) continue else: if name not in userDict.keys(): print(‘用户名不存在,请重新输入账号和密码‘) continue else: i = 1 while i <= 4: if userDict[name] == passwd: print("欢迎登录,%s"%name) break elif i < 4: passwd = raw_input(‘请重新输入密码,您还有%d次机会>>‘%(4-i)).strip() i += 1 if i ==4: print(‘密码输入错误超过3次,您的账号已经被锁定了,请重新启动程序‘) #用户账号加入锁定文件中 with open(‘blackList.txt‘,‘a+‘) as f: f.writelines(name+‘\\n‘) break break
这样文件菜单目录结构如下
文件样例:
用户名密码文件内容:
xjw,1517
zjl,1516
gl,1515
xrf,1518
黑名单文件:
xjw
gl
以上就基本实现了登录的用户交互的界面,因为中间还没涉及到类和方法,所以代码有点冗余,希望之后在学习之后再做改进!
以上是关于python学习之路——第三弹 (作业篇第一题)的主要内容,如果未能解决你的问题,请参考以下文章
爬虫学习 Python网络爬虫第三弹《爬取get请求的页面数据》
Python学习笔记——进阶篇第八周———FTP断点续传作业&批量主机管理工具