用户有三次机会登录,登录成功,显示欢迎界面。

三次登录失败,账户被锁定,下次登录失败。

思路:

1:流程控制:for或者while循环,达到三次检测目的。

2:文件操作。

检测文档,一旦发现输入账户名在锁定文档中,显示锁定,登录失败。

第一次未经优化版本代码:

#_*_coding:utf-8_*_

times = 0 # 初始次数为0

Username = "wuqiangroy"
userpassword = "123321"
f = open("aaa.txt", "r") # 以read模式打开aaa.txt文件,如果没有自动创建。
file_list = f.readlines()
f.close() lock = [] #lock为一个列表。 for i in file_list:
line = i.strip("\n")
lock.append(line) else:
while times < 3:
username = raw_input("Please enter the username: ")
if username in lock: #检测输入帐户名是否在lock中,如果在,显示账户被锁定,然后break跳出循环。
print "You account has been locked!"
break
password = raw_input("Please enter your password: ")
if username == Username and password == userpassword:
print "Successfull! Welcome log in!"
break
else:
print "Your username or password is wrong! Please enter again! " times += 1
print "You just have only %s shots!" %(3-times) else:
print "The only 3 times you used out, the account has been locked!"
f = open("aaa.txt", "w+") #以写入模式打开aaa.txt文件
f.write("\n")
f.write(username) #三次机会输入错误,将输入的名字写进aaa.txt文件中。
f.close()

  

最新文章

  1. Random
  2. 使用C#访问SQLLite
  3. Web 仪表盘
  4. (转)由Uploadify插件想到的Flash无法传递Session和Cookie的问题解决
  5. Entity Framework走马观花之把握全局
  6. SQL Server 2008 清空删除日志文件
  7. spring mvc处理json
  8. 3DTouch
  9. request.getParamer()
  10. HtmlTextNode &amp; HtmlCommentNode
  11. 写sql语句注意事项
  12. JSP使用JDBC ODBC 实例
  13. linux小命令
  14. BGP拓扑错误模拟配置
  15. JMM介绍
  16. Minigui开发之遥控控制逻辑算法
  17. 记一些让footer始终位于网页底部的方法
  18. 一个比较实用的商业级图表Echarts
  19. Spark On Yarn的两种模式yarn-cluster和yarn-client深度剖析
  20. size_t和unsigned int区别

热门文章

  1. Centos下防止暴力破解密码 - Denyhost
  2. Glide请求图片能携带Cookie的哟!
  3. 常见的java类
  4. Husky or C++ API - HDFS Short-Circuit Local Reads
  5. NGINX、PHP-FPM开机自动启动
  6. cocos2dx 入门
  7. 关于Java内存模型的解读
  8. Java被忽略的基本知识(一)
  9. 【KeyCode 键码】
  10. win10安装oracle 11g 报错 要求的结果: 5.0,5.1,5.2,6.0 6.1 之一 实际结果: 6.2