栏目分类:
子分类:
返回
文库吧用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
文库吧 > IT > 软件开发 > 后端开发 > Python

用户登录(字典)

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

用户登录(字典)

项目场景: 实验课作业
问题描述:

用户登陆系统时需要首先输入账号,如果账号不存在,输出“Wrong User”并结束程序;账号正确时,再输入密码,验证账号密码与已给定的账号密码是否一致,如果一致,输出“Success”,否则输出“Fail”以及剩余尝试次数。总尝试次数为3次,如果3次均输入错误,输出“Login Denied”。


原因分析:

代码一由于键对应的值是一个一维列表,数据处理起来比较复杂,
可以用keys()获取键,用values()获取值,但是要转换为列表,方便使用
因为他们返回的不是列表

dic = {"aaa": ["123456", 10000], "bbb": ["888888", 5000], "ccc": ["333333", 3000]}
dic.keys()
print(dic.keys())
print(dic.values())
print(list(dic.keys()))
print(list(dic.values()))

代码二,由于键值只用了一个所以我们建立字典的时候只使用一个就行了,这样编程就变得很简单了。


解决方案:

代码一:

dic = {"aaa": ["123456", 10000], "bbb": ["888888", 5000], "ccc": ["333333", 3000]}
flag = 3
account = input()
if account in dic:
    while(flag > 0):
        # 用户1
        if account == list(dic.keys())[0]:
            mima = input()
            if mima == list(dic.values())[0][0]:
                print("Success")
                break
            else:
                flag = flag - 1
                if flag > 0:
                    print("Fail,{} Times Left".format(flag))

        # 用户2
        elif account == list(dic.keys())[1]:
            mima = input()
            if mima == list(dic.values())[1][0]:
                print("Success")
                break
            else:
                flag = flag - 1
                if flag > 0:
                    print("Fail,{} Times Left".format(flag))

        # 用户3
        elif account == list(dic.keys())[2]:
            mima = input()
            if mima == list(dic.values())[2][0]:
                print("Success")
                break
            else:
                flag = flag - 1
                if flag > 0:
                    print("Fail,{} Times Left".format(flag))
        else:
            print("Wrong User")
            break
    if flag == 0:
        print("Login Denied")

代码二

dic={"aaa":'123456',"bbb":'888888',"ccc":'333333'}
x=3
n=input()
if n in dic:
    while x>0:
        a=input()
        if a==dic[n]:
            print("Success")
            break
        else:
            x-=1
            if x>0:
                print("Fail,{} Times Left".format(x))
    if x==0:
        print("Login Denied")
else:
    print("Wrong User")

知识点:
keys()和values()函数

dic = {"aaa": ["123456", 10000], "bbb": ["888888", 5000], "ccc": ["333333", 3000]}
dic.keys()
print(dic.keys())
print(dic.values())
print(list(dic.keys()))
print(list(dic.values()))

转载请注明:文章转载自 www.wk8.com.cn
本文地址:https://www.wk8.com.cn/it/280199.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 wk8.com.cn

ICP备案号:晋ICP备2021003244-6号