Python实现登陆文件验证方法

yipeiwu_com6年前Python基础

代码主要功能:

利用Python实现简单的登陆验证,代码主要有两个部分组成:

第一部分:登陆页面,作用是实现用户名和密码的输入

利用两个输入函数input()来实现对用户名和密码的输入

第二部分:文件验证,作用是对输入的信息进行验证

1.用户名的验证,首先对存储用户名和密码的信息读取,然后再把输入的用户名和从文件中读取的用户名进行比对,如果比对成功则进行下一步的密码验证,如果没有实现则提示重新输入密码,对密码的验证也有一个输入上限,当密码输入错误3次,程序退出。否则验证成功。

登陆页面代码:

import text #text为文件名:text.py 用来实现文件验证

print("欢迎使用登陆")

username = input("请输入用户名:")

while text.CheckUsername(username)==-1:

  username = input("没有该用户\n请输入用户名:")

else:

  n=text.CheckUsername(username)

  password = input("请输入密码:")

  text.CheckUser(n,password)

文件验证代码:

import pickle

def CheckUsername(name):#检验是否有该用户名

  ff = open("D:\\test.txt", "rb")

  n = pickle.load(ff)

  # print(n)

  # print(n[0][0])

  # print(len(n))

  ff.close()

  for i in range(len(n)):

    if name == n[i][0]:

      return i

  return -1#用来返回用户名所在位置

def CheckUser(x,psd):#x为用户名位置,pwd为密码

  ff = open("D:\\test.txt", "rb")

  n = pickle.load(ff)

  # print(n)

  # print(n[0][0])

  # print(len(n))

  ff.close()

  i=1

  while n[x][1]!=psd and i<3:

    psd=input("请再次输入密码:")

    i+=1

  else:

    if i<3:

      print("登陆成功!")

    else:

      print("3次输入密码错误!已锁定")

运行结果截图:

成功登陆页面:

验证用户名页面:

验证密码页面:

附加内容:

用户名和密码在文件的存储方式是一个列表:

import pickle

s=[["aaa","111"],["bbb","222"],["ccc","333"]]

f = open("D:\\test.txt","wb")

try:

  pickle.dump(s,f)

except:

  print("输入异常")

finally:

  f.close()

相关文章

python 中random模块的常用方法总结

python 中random的常用方法总结 一、random常用模块 1.random.random() 随机生成一个小数 print(random.random()) # 输出...

python flask web服务实现更换默认端口和IP的方法

flask web后台启动后会发现默认是 localhost 127.0.0.1:5000 如果需要修改,方便调试发布 可以采用以下方式运行 from flask import Fl...

python实现K近邻回归,采用等权重和不等权重的方法

如下所示: from sklearn.datasets import load_boston boston = load_boston() from sklearn.cros...

在Windows8上的搭建Python和Django环境

在Windows8上的搭建Python和Django环境

先从搭建环境开始。作为一个Python初学者来说,一个趁手的编译器是很重要的,本想用VS来开发Python,但是感觉实际开发中没有几家公司会用VS来开发Python,没办法就换成了MyE...

python-序列解包(对可迭代元素的快速取值方法)

一般情况下 x,y,z = 1,2,3 print("x:",x) print("y:",y) print("z:",z) #运行结果 x: 1 y: 2 z: 3 对元祖序...