Python实现登陆文件验证方法

yipeiwu_com7年前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()

相关文章

pycharm执行python时,填写参数的方法

pycharm执行python时,填写参数的方法

1、按快捷键:alt+shift+F10调出运行窗口,之后选择Edit Configurations或者按0 2、输入参数,点击运行 以上这篇pycharm执行python时,填写参...

利用Python实现Shp格式向GeoJSON的转换方法

利用Python实现Shp格式向GeoJSON的转换方法

一、简介 Shp格式是GIS中非常重要的数据格式,主要在Arcgis中使用,但在进行很多基于网页的空间数据可视化时,通常只接受GeoJSON格式的数据,众所周知JSON(JavaScri...

手写一个python迭代器过程详解

分析 我们都知道一个可迭代对象可以通过iter()可以返回一个迭代器。 如果想要一个对象称为可迭代对象,即可以使用for,那么必须实现__iter __()方法。 在一个类...

Python中还原JavaScript的escape函数编码后字符串的方法

遇到一个问题需要用Python把JavaScript中escape的中文给还原,但找了大半天,也没有找到答案,只好自己深入研究解决方案。 我们先来看在js中escape一段文字的编码 复...

运行django项目指定IP和端口的方法

运行django项目指定IP和端口的方法

一、django项目启动命令 默认IP和端口 python manage.py runserver 指定端口 python manage.py runserver 192.1...