Python实现账号密码输错三次即锁定功能简单示例

yipeiwu_com6年前Python基础

本文实例讲述了Python实现账号密码输错三次即锁定功能。分享给大家供大家参考,具体如下:

初学Python—1

#实现账号输错三次即锁定
user = "hubery"
passwd = "123"
confirm = 0
lock=0
fileOpen = open("username.txt","a+")
fileOpen.seek(0)
for i in range(3):
 username = input("username:")
 passsword = input("password:")
 for line in fileOpen.readlines():
  if username == line.strip():
   print("账户已经锁定!")
   lock=1
   break
  else:
   continue
 fileOpen.seek(0)
 if user == username and lock ==0:
  if passwd == passsword:
   print("欢迎,欢迎!")
   confirm = 1
   break
  else:
   print("账号户或者密码错误!")
   continue
 elif lock==1:
  continue
 else:
  print("1账号或者密码错误!")
  continue
fileOpen.close()
if confirm == 0 and lock==0:
 fileWrite=open("username.txt","a")
 fileWrite.write(username+"\n")
 fileWrite.close()

基本功能可以实现;

锁定的账号为第三次输错的用户名(待完善)

以下为完善版本,如有错误,请告知

import os
user = "hubery"
passwd = "123"
count = 0
lock = 0
fileOpen = open("username.txt", "a+")
fileOpen.seek(0)
while 1:
 for i in range(5):
  username = input("username:")
  passsword = input("password:")
  for line in fileOpen.readlines():
   if username == line.strip():
    print("账户已经锁定!")
    lock = 1
    break
   else:
    continue
  fileOpen.seek(0)
  if user == username:
   if lock == 1:
    continue
   elif passsword == passwd:
    print("欢迎,欢迎!")
    os._exit(0)
   elif count < 2:
    print("账号或者密码错误!")
    count += 1
    continue
   else:
    fileOpen.write(username + "\n")
    fileOpen.flush()
    print("密码输入错误超过三次,账户已经锁定!")
    fileOpen.seek(0)
    continue
  else:
   print("账号密码错误!")
   continue
 check=input("还想验证其他账户?(yes-继续,no-退出)")
 if "no"==check.lower():
  os._exit(0)
 else:
  continue
fileOpen.close()

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数据结构与算法教程》、《Python编码操作技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程

希望本文所述对大家Python程序设计有所帮助。

相关文章

Python跳出循环语句continue与break的区别

Python跳出循环语句continue与break的区别

虽然在Python中的for循环与其它语言不大一样,但跳出循环还是与大多数语言一样,可以使用关键字continue跳出本次循环或者break跳出整个for循环。 break 复制代码 代...

python3 http提交json参数并获取返回值的方法

如下所示: import json import http.client connection = http.client.HTTPSConnection('spd.aiopos...

使用tensorflow实现线性svm

本文实例为大家分享了tensorflow实现线性svm的具体代码,供大家参考,具体内容如下 简单方法: import tensorflow as tf import numpy a...

python 统计列表中不同元素的数量方法

刚刚上网搜了一下如何用python统计列表中不同元素的数量,发现很少,找了半天。我自己来写一种方法。 代码如下 list=[1,1,2,2,3] print(list) set1=s...

Python使用multiprocessing实现一个最简单的分布式作业调度系统

 mutilprocess像线程一样管理进程,这个是mutilprocess的核心,他与threading很是相像,对多核CPU的利用率会比threading好的多。 介绍 P...