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 回调函数和回调方法的实现分析

回调与事件驱动 回调函数有比较重要的意义:它在是事件驱动的体现 我们试想一个场景,如果我们触发了某个事件,比如点击事件 那么只要给这个点击事件绑定一个或多个处理事件,也就是回调函数 我们...

PyCharm安装Markdown插件的两种方法

PyCharm安装Markdown插件的两种方法

Markdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式。 从github下载的代码一般都会带有README.md文件,该文件是...

Python linecache.getline()读取文件中特定一行的脚本

Python linecache.getline()读取文件中特定一行的脚本

比如: ˂!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHig...

详解python3中tkinter知识点

#导入tkinter模块,以及导入ttk模块,tkinter是python结合tk的标准接口,ttk是TK8.5之后加入的“主题化工具包” from tkinter import *...

深入解析python中的实例方法、类方法和静态方法

深入解析python中的实例方法、类方法和静态方法

1、实例方法/对象方法 实例方法或者叫对象方法,指的是我们在类中定义的普通方法。 只有实例化对象之后才可以使用的方法,该方法的第一个形参接收的一定是对象本身 2、静态方法 (1).格式...