码迷,mamicode.com
首页 > 其他好文 > 详细

实现三次登录

时间:2020-07-16 22:01:56      阅读:82      评论:0      收藏:0      [点我收藏+]

标签:ict   readline   input   python   pytho   函数   密码   代码   one   

三次登录

写一个函数完成三次登录,三次不成功则登录失败,失败返回False,登陆成功返回True

用户的用户名和密码存储在文件中,该文件包含多个用户名以及对应的密码,

形式为:name|password,每个人占用文件的一行

实现代码:

def login():
    flag = 0  # 用于三次循环
    while 1:
        flag += 1  # 进行一次,flag加一次
        if flag > 3:
            print("\n登录已失败三次,结束!")
            return False

        print(f"\n正在进行第 {flag} 次登录:")
        user_name = input("请输入用户: ").strip()  # 避免用户多输入空格
        user_pwd = input("请输入密码: ").strip()

        userDict = {}  # 用户字典
        f = open(‘users.txt‘, mode=‘r‘)
        for user in f.readlines():
            user = user.strip()  # 去掉每行后面的换行符
            # user.split(‘|‘)返回的是一个列表[‘admin‘, ‘admin_pwd‘]
            user = user.split(‘|‘)
            userDict[user[0]] = user[1]
        f.close()
        # userDict:{‘admin‘: ‘admin_pwd‘, ‘Tom‘: ‘Tom_pwd‘, ‘Jack‘: ‘Jack_pwd‘}
        # userDict.get(user_name) 不存在返回None,存在则返回的是键对应的值(密码)
        if user_pwd != userDict.get(user_name):
            print("用户名或密码输入错误!")
            continue  # 进行下一次登录操作
        else:
            # 成功登录
            return True
login()  # 调用函数

测试结果1:
正在进行第 1 次登录:
请输入用户: admin
请输入密码: admin_pwd
True

测试结果2:
正在进行第 1 次登录:
请输入用户: ad
请输入密码: ad
用户名或密码输入错误!

正在进行第 2 次登录:
请输入用户: a
请输入密码: ss
用户名或密码输入错误!

正在进行第 3 次登录:
请输入用户: admin
请输入密码: 123
用户名或密码输入错误!

登录已失败三次,结束!
False

实现三次登录

标签:ict   readline   input   python   pytho   函数   密码   代码   one   

原文地址:https://www.cnblogs.com/ddd98dy/p/13324392.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!