Python基础练习之用户登录实现代码分享
作者:Bigberg 时间:2023-11-06 10:59:37
python版本为python3.5
1.要求
1)输入用户名密码
2)认证成功后显示欢迎信息
3)输错三次后锁定
2.需求分析
1)用户信息存储在文件中(login/config/user_login.txt)
2)用户输入用户名和密码
3)判断用户名是否存在,存在则继续,不存在则提示继续输入
4)判断输入的用户名是否已经被锁定,如果已锁定则退出程序,否则继续
5)匹配文件中的用户信息
6)如果匹配则打印出欢迎信息
7)如果输入3次密码错误,则锁定该用户名(login/config/name_lock.txt)
3.测试用户
bigberg:123abc
lc:123456
smallberg:111111
root:12345
dinasor:12321
# -*- coding: UTF-8 -*-
#Author:Bigberg
#定义一个循环计数
count = 0
#定义一个字典存储用户名和密码
names={}
#定义一个列表存储用户名
name_exit = []
#输入用户名
username = input("username:")
#判断输入的用户的用户是否在用户名单中
with open("../config/name_login.txt",'r') as f:
while True:
line = f.readline().strip()
if not line:
break
else:
name = line.split(':')[0]
passwd = line.split(':')[1]
names[name] = passwd
for key in names:
name_exit.append(key)
#判断用户名是否正确,不正确则继续输入
while username not in name_exit:
print("The account is not exit.Check it again.")
username = input("username:")
else:
# 读取锁定文件中的内容
with open("../config/name_lock.txt", "r") as f:
lock_name = f.read()
# 判断用户名是否在锁定文件中,如果在就退出程序
if username == lock_name:
print("Sorry.Your account has been locked.")
exit()
else:
# 3次输入密码的机会
while count < 3:
passwd_input = input("password:")
# 判断用户名和密码是否有效
if passwd_input == names[username]:
print("Welcome!", username)
break
else:
print("Error,please try again.")
count += 1
# 如果3次输入密码错误,则将用户名添加到锁定文件
if count == 3:
with open("../config/name_lock.txt", "w") as f:
f.write("%s" % username)
print("You have tried 3 times,and your account will be locked")
来源:http://www.cnblogs.com/bigberg/p/6419986.html#3625687
标签:python,用户登录
0
投稿
猜你喜欢
Python将xml和xsl转换为html的方法
2022-04-02 14:24:32
程序员的八种境界,你在哪一境?
2022-07-19 11:22:19
Python创建或生成列表的操作方法
2022-05-18 10:21:23
利用Python编写简易版德州扑克小游戏
2021-02-03 06:00:59
SQL Server 2008 数据库镜像部署实例之一 数据库准备
2024-01-23 14:21:48
识别操作系统是不是vista的js代码
2013-10-20 19:08:25
php下检测字符串是否是utf8编码的代码
2023-11-15 16:00:59
C++/Php/Python/Shell 程序按行读取文件或者控制台的实现
2021-12-20 06:36:18
PHP开发之归档格式phar文件概念与用法详解【创建,使用,解包还原提取】
2023-09-08 11:36:58
SQL Server 2019下载与安装教程(自定义安装)
2024-01-25 07:15:47
浅谈python写入大量文件的问题
2021-12-07 00:44:00
CSS样式和JavaScript脚本是否放置于外部文件的探讨
2008-08-08 12:39:00
pycharm console 打印中文为乱码问题及解决
2023-06-15 22:30:02
Access数据库出现0x80004005问题的解决方法
2008-11-28 14:25:00
python模块导入方式浅析步骤
2023-05-13 01:08:13
python在Windows下安装setuptools(easy_install工具)步骤详解
2022-10-18 19:40:23
python读取大文件越来越慢的原因与解决
2022-07-23 08:35:28
python编写学生成绩管理系统的逻辑结构及功能实现
2021-08-23 18:32:21
mysql installer community 8.0.16.0安装配置图文教程
2024-01-14 00:30:55
linux下mysql 5.7.16 免安装版本图文教程
2024-01-18 06:22:56