#setencoding=utf-8#用户名和密码输入正确,则登陆成功

#用户名正确密码错误,只再输入密码,有3次机会

#错误3次,则把用户名放入lock中

import os,sys

#存放用户名和密码的文件是E:\python\user.txt

accounts_file= ‘E:\\python\\user.txt‘#被锁的用户要写入此文件

lock_file= ‘E:\\python\\lock.txt‘#先读出来放内存中,免得每次输入用户后进行判断都要打开文件

user=file(accounts_file)

account_list=user.readlines()

user.close()

#控制是否退出while大循环的标识

loginSucess=False

#这里用的大while循环,所以用户名输不对,就会一直输,如果想限制用户名输入次数,那么while改成forwhileTrue:

#raw_input是一个内置函数,获取用户输入,与用户建立交互

#strip()是忽略空格

username= raw_input(‘username:‘).strip()

#先判断用户名是否存在,用户名如果存在才继续,如果不存在,直接跳出循环,结束if len(username)!=0:

#用户名如果不为空的时候,判断是不是存在for i inaccount_list:

#i读到的是一行,而一行有2列,第1列就是索引为0的才是用户名,第二列索引为1的是密码

#split()方法是分隔符,默认是空格,

i=i.split()if username==i[0]:#用户名正确

#用户名正确的时候,只给3次输入密码的机会for x in range(3):

password= raw_input(‘password:‘).strip()if password==i[1]:

loginSucess=True#如果为True的时候,直接走上上级for下的if,欢迎完就退出break#如果密码错误

#如果匹配正确或循环中有break就退出,,else不执行else:

print‘%s ,你已经输入错误密码3次了,going to lock‘ %username

l= file(lock_file,‘a‘)

l.write(username+‘\n‘)

l.close()

view=file(lock_file)

print view.read()if loginSucess isTrue:

print‘登陆成功,welcome to my system!!!‘

break#登陆成功就直接跳出while大循环

elif loginSucessisFalse: #这种是用户名输入错误,它的节点在用户不为空的条件之下 ,这里不能用break,不能跳出while大循环,因为我要你一直输,直到成功

print‘用户名输入错误,请重新输入。‘

else: #用户名也正确,输入密码不正确3次

print‘%s,sorry ,输入密码3次错误你已被锁‘ %usernamebreak

else:#用户名输入为空的时候continue

python判断密码是否正确_第一个python程序-判断登陆用户名和密码是否正确相关推荐

  1. python类的成员函数_注入一个python类成员函数

    你在这里要做的是Child2.foo用self不是a的方法调用未绑定的方法Child2. 这是非法的,Python 2将检测到并提出一个TypeError解释错误的地方:TypeError: unbo ...

  2. python 程序块 挂掉的服务_写一个python的服务监控程序

    写一个python的服务监控程序 前言: Redhat下安装Python2.7 rhel6.4自带的是2.6, 发现有的机器是python2.4. 到python站点下载源码.解压到Redhat上.然 ...

  3. python去掉每行前面_第一个python去掉行号

    (根据我在博客园上连载的四篇文章整理,见http://yanxy.cnblogs.com/,转载请注明出处)近两天内的目标是在我博的每个栏目发一篇文章,先都占个坑再说,空着不好看:) <程序设计 ...

  4. python turtle绕原点旋转_每天一个Python小技巧,用Python 画个多啦A梦,小猪佩奇,文末还有Python入门学习视频

    见网络上有人用Python 画出来个多啦A梦,很是新奇,来来来,我们看一下他们主要用到的库. 其实主要用的库就一个 turtle 库 先说明一下turtle绘图的基础知识: 1. 画布(canvas) ...

  5. python统计大小写字母个数_编写一个Python函数,它接受一个字符串并计算大写字母和小写字母的数量...

    问题why this one doesn't work? 除了语法错误和运行时错误之外,您的代码逻辑还有很长的路要走.你实际上没有按问题所问的去做.您似乎正在尝试计算单个字符中的大写字符数.那是不正确 ...

  6. python闰年多一天_记一个 python datetime 闰年问题

    python中datetime是比较常用的,平时用起来也没什么问题,但是今天2020年2月29日服务器却开始报错了,这里有个平时难以注意的坑 服务器上跑的是新浪网的爬虫,抓取的页面信息中带有日期 XX ...

  7. python 病毒 360杀毒_通过一个python小脚本来下载最新的360杀毒安装程序

    小脚本很简单,主要是练习一下正则匹配,与简单的urllib库的应用 #coding: utf8 import urllib,re import os def getLastinstall(): pag ...

  8. Python3_基础部分_第一个Python程序

    学习编程,可以使用很多种的方式进行,比如命令行方式(早期的程序员就是这种方式编程的),比如计算机自带的文本文件工具:记事本等,在比如高级的编程语言开发工具(IDE):Pycharm.Inteill等. ...

  9. python将字符串逆序_为什么说Python是一门伟大的入门语言?(附免费教程)

    Python 是一门伟大的入门语言.作为一门伟大的编程语言,一定要具备一些特征,其中有五项特征是非常重要的: 非常棒的首次体验:就像书的开始,首先一定要能够"沉迷",学习新知识一定 ...

最新文章

  1. 巴菲特评科技股:投资 IBM 是个错误,还会增持苹果,亚马逊简直是奇迹
  2. 用于自动驾驶的实时车道线检测和智能告警
  3. 危害企业IT系统最严重的五个安全威胁
  4. Gradle sync failed: failed to find Build Tools revision 21.1.2
  5. oracle 性能优化--索引总结
  6. 关于bhuman文件结构
  7. SpringBoot_配置-properties配置文件编码问题
  8. 天才编程女孩敲开支付宝大门!马云:有梦想的孩子了不起!
  9. 在MySQL中使用游标和for循环
  10. 基于JAVA+Servlet+JSP+MYSQL的网上书城
  11. Codeforces Round #518 (Div. 2): E. Multihedgehog(模拟)
  12. MySQL 学生信息管理系统 表格信息
  13. 第四章 实验三IBM MQ测试高可用,使用连接工厂(多地址连接方式)
  14. 谷歌翻译api小尝试
  15. ImageJ的安装与简单使用
  16. html批量生成断面,【干货】利用Excel在AutoCAD中批量绘制断面图的方法
  17. 模拟与仿真两个词的区别
  18. Minecraft 1.12.2模组开发(五十五) 动画生物实体
  19. python全栈开发中级班全程笔记(第三模块、第一章(多态、封装、反射、内置方法、元类、作业))...
  20. win7系统提示计算机内存不足,win7电脑提示计算机内存不足怎么办

热门文章

  1. 建议给予导师决定硕博士能否毕业的自主权?教育部:将充分采纳!
  2. 2020中国高校薪资排行出炉!好过双一流的高校原来这么多!
  3. 200 万年薪,却招不到清华姚班毕业生!能上姚班的都是什么人?
  4. 轻松一刻:程序员的工作状态
  5. 文档信息的向量化-词袋模型、gensim实现和词条分布
  6. MATLAB_4-形态学_腐蚀_膨胀_灰度图的腐蚀以及膨胀_开运算_闭运算_文章末尾有几个素材例子
  7. 你有哪些deep learning(rnn、cnn)调参的经验?
  8. 理解卷积神经网络中的输入与输出形状 | 视觉入门
  9. 使用Python+OpenCV实现图像数据采集
  10. 漂亮,LSTM模型结构的可视化