Python学习之编写登陆认证程序

需求:

让用户输入用户名密码
认证成功后显示欢迎信息
输错三次后退出程序
可以支持多个用户登录 (提示,通过列表存多个账户信息)
用户3次认证失败后,退出程序,再次启动程序尝试登录时,还是锁定状态(提示:需把用户锁定的状态存到文件里)

代码如下:

 1 # -*- coding: utf-8 -*-
 2 # __date__ = 3/12/2018
 3
 4 count = 0
 5 users = {‘chfang‘:‘12345‘, ‘alice‘:‘abcde‘, ‘admin‘:‘admin‘}         #利用字典存储多个用户名/密码
 6 _name = input("Username: ")
 7 if _name in users:          #判断用户输入的用户名是否在字典中
 8     lock_file_name = _name + "_lock.txt"    #根据用户名读取对应文件中的锁定状态码(0表示允许登录,1表示帐号被锁定)
 9     with open(lock_file_name, "r") as fp:
10         _lock = fp.read()
11     if _lock == "0":
12         while count < 3:
13             count += 1
14             _passwd = input("Password: ")
15             if _passwd == users.get(_name):      #根据用户名在从字典中取出其对应的密码
16                 print("登录成功!欢迎%s" % _name)
17                 with open(lock_file_name, "w") as f1:
18                     f1.write("0")
19                 break
20             else:
21                 print("登录失败!剩余重试次数%d" % (3 - count))
22                 with open(lock_file_name, "w") as f1:
23                     f1.write("1")
24     elif _lock == "1":
25         print("您的账户已被锁定,请联系管理员!")
26     else:
27         print("状态文件不能为空,请联系管理员!")
28 else:
29     print("用户不存在!")
30 print("-----------------------------")      #仅作结束提示用途
基础功能均能实现。

原文地址:https://www.cnblogs.com/chfang007/p/8798522.html

时间: 2024-08-29 15:23:39

Python学习之编写登陆认证程序的相关文章

Python开发入门14天集训营&#183;第1章Python基础语法-编写登陆认证程序

作业题目: 编写登陆认证程序 作业需求: 基础需求: 让用户输入用户名密码 认证成功后显示欢迎信息 输错三次后退出程序 升级需求: 可以支持多个用户登录 (提示,通过列表存多个账户信息) 用户3次认证失败后,退出程序,再次启动程序尝试登录时,还是锁定状态(提示:需把用户锁定的状态存到文件里) 1 #!/usr/bin/env python 2 # -*- coding=utf-8 -*- 3 """ 4 @author:Wllen 5 @file:user_pass.py 6

Python练习(第一周): 编写登陆认证程序

基础需求: 让用户输入用户名密码 认证成功后显示欢迎信息 输错三次后退出程序 升级需求: 可以支持多个用户登录 (提示,通过列表存多个账户信息) 用户3次认证失败后,退出程序,再次启动程序尝试登录时,还是锁定状态(提示:需把用户锁定的状态存到文件里) 代码: # 通过列表存储用户名,密码 logon_authentication = False user_info = [['li', '123'], ['yong', '234'], ['liyong', '345']] logon_num =

python之作业编写登陆接口(第一天)

作业:编写登陆接口 输入用户名密码 认证成功后显示欢迎信息 输错三次后锁定 针对此实例写了有二种类型的脚本,略有不同,具体如下: 帐号文件account.txt内容如下: sam 123 david 12 kevin 123lin 12 tailen 123 jack 12 锁文件account_lock.txt默认为空 一.只针对帐号文件里的用户进行判断并锁定,针对用户和密码各有三次错误重试机会. 1.流程图如下: 代码如下: #!/usr/bin/python27 #_*_ coding:u

Python学习作业之登陆接口_For

作业:编写登陆接口 要求: 输入正确则显示欢迎信息,输入错误三次则锁定. # Author:Bryce_Zhang username = "1" password = "2" for i in range(4):     users = input("users:")     pass1 = input("pass1:")     if users == username and pass1 == password:     

Python学习作业之登陆接口_While

作业:编写登陆接口 要求: 输入正确则显示欢迎信息,输入错误三次则锁定. # Author:Bryce_Zhang username = '1' password = '2' count = 0 while count <4:     users = input("users:")     pass1 = input("pass:")     if  users == username and pass1 == password:         print(

python作业:编写登陆接口

要求: 1.要求用户输入用户名和密码 2.认证成功显示欢迎信息 3.输入错误超过三次锁定用户 1 #!/usr/bin/env python 2 #_*_coding:utf-8_*_ 3 #__author__ = 'Administrator' 4 5 static=True 6 login=False 7 username='' 8 lockfile=r'lock.txt' 9 for i in range(3): 10 username=input("please input your

【python学习】模拟登陆网站

一.通过post方式模拟登录 post方式登录网站,需要先将必要信息填充到一个dict中,例如: Data={'username':username,'password':password} 二.这里有几个问题: 1.是我怎么知道需要哪些信息填写到dict中呢? 2.是我怎么知道需要post的地址url是哪个呢? 举例分析: 对于这两个问题,以豆瓣为例. 首先打开豆瓣的登录页面 可以看到需要post的地址就是url='http://account.douban.com/login': 那么需要哪

python学习之路-练习小程序03(三级菜单)

需求: 可依次选择进入各子菜单 可从任意一层往回退到上一层 可从任意一层退出程序 所需新知识点:列表.字典 1.基础版: #!/usr/bin/env python # -*- coding:utf-8 -*- #Author:zengwenhai # 三级菜单 menu = { '湖南省':{ '郴州市':{ '嘉禾县':{ '珠泉镇':{}, '袁家镇':{}, '泮头乡':{} }, '汝城县':{ '土桥镇':{}, '永丰乡':{}, '田庄':{} }, '安仁县':{ '灵官镇':

Python学习-计算BMI的小程序

示例: 小明身高1.75,体重80.5kg.请根据BMI公式(体重除以身高的平方)帮小明计算他的BMI指数,并根据BMI指数: 低于18.5:过轻 18.5-25:正常 25-28:过重 28-32:肥胖 高于32:严重肥胖 用if-elif判断并打印结果: # -*- coding: utf-8 -*- height = 1.75 weight = 80.5 bmi = 80.5/1.75*1.75 if bmi < 18.5:     print('过轻') elif bmi >= 18.