代码主要功能:
利用Python实现简单的登陆验证,代码主要有两个部分组成:
第一部分:登陆页面,作用是实现用户名和密码的输入
利用两个输入函数input()来实现对用户名和密码的输入
第二部分:文件验证,作用是对输入的信息进行验证
1.用户名的验证,首先对存储用户名和密码的信息读取,然后再把输入的用户名和从文件中读取的用户名进行比对,如果比对成功则进行下一步的密码验证,如果没有实现则提示重新输入密码,对密码的验证也有一个输入上限,当密码输入错误3次,程序退出。否则验证成功。
登陆页面代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
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)
|
文件验证代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
|
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次输入密码错误!已锁定" )
|
运行结果截图:
成功登陆页面:
验证用户名页面:
验证密码页面:
附加内容:
用户名和密码在文件的存储方式是一个列表:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
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()
|