鱼C论坛

 找回密码
 立即注册
查看: 2021|回复: 9

为什么我输入3或者4无法显示登陆成功呢?求大佬帮忙看看是哪儿出问题了

[复制链接]
发表于 2021-3-11 20:10:07 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
#用python设计的第一个开机程序
print("----新建用户:1/2----")
print("----用户登陆:3/4----")
print("----退出程序:5/6----")
dictionary = {}
temp = int(input("请输入指令数字:"))
while True:
    if temp == 1 or temp == 2:
        Newname = input("请输入创建的用户名:")
        Creatpassward = input("请输入密码:")
        dictionary[Newname] = Creatpassward
        print("创建成功")
        temp = int(input("请输入指令数字:"))
    elif temp == 3 or temp == 4:
        name = input("请输入用户名:")
        passward = input("请输入密码:")
        if name in dictionary and dictionary[name] == passward:
            print("登陆成功,欢迎进入xxoo系统")
            break
        else:
            print("密码或用户名错误")
            print("是否重新输入?【按yes重新输入或NO返回】")
            decision = input(":")
            if decision != "NO":
                print("请重新输入:")
            else:
                print("返回")
    elif temp == 5 or temp == 6:
        print("退出程序,谢谢使用")
        break
    else:
        print("格式错误")
        temp = int(input("请输入指令数字:"))
        [/code]
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-3-11 20:31:20 | 显示全部楼层
我运行的,没有问题
=================== RESTART: C:\Users\86177\Desktop\临时小程序.py ===================
----新建用户:1/2----
----用户登陆:3/4----
----退出程序:5/6----
请输入指令数字:1
请输入创建的用户名:sss
请输入密码:123
创建成功
请输入指令数字:4
请输入用户名:sss
请输入密码:123
登陆成功,欢迎进入xxoo系统
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-3-11 21:58:50 | 显示全部楼层
我试了一下,可以用,但是有点问题
就是密码输错之后再次输入有点不太合理,可以尝试优化一下
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-3-11 22:01:48 | 显示全部楼层


print("----新建用户:1/2----")
print("----用户登陆:3/4----")
print("----退出程序:5/6----")
dictionary = {}
sign = True
temp = int(input("请输入指令数字:"))
while True:
    if temp == 1 or temp == 2:
        Newname = input("请输入创建的用户名:")
        Creatpassward = input("请输入密码:")
        dictionary[Newname] = Creatpassward
        print("创建成功")
        temp = int(input("请输入指令数字:"))
    while True:    
        if temp == 3 or temp == 4:
            name = input("请输入用户名:")
            passward = input("请输入密码:")
        else :
            break
            if name in dictionary and dictionary[name] == passward:
                print("登陆成功,欢迎进入xxoo系统")
                sign = False
                break
            else:
                print("密码或用户名错误")
                print("是否重新输入?【按yes重新输入或NO返回】")
                decision = input(":")
                if decision != "NO":
                    print("请重新输入!")
                    
                else:
                    print("返回")
                    break
    if sign != True:
        break
    if temp == 5 or temp == 6:
        print("退出程序,谢谢使用")
        break
    else:
        print("格式错误")
        temp = int(input("请输入指令数字:"))
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-3-11 22:03:32 | 显示全部楼层
这个是我修改了一下的,之前返回并不能退回到等待输入指令的哪里
还有这里的yes/NO
其实也可以优化一下
其它暂时好像都没问题了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-11 22:48:24 | 显示全部楼层

第一个break是直接到哪一部分才终止循环啊,而且不管用户名或密码都是正确错误都会继续循环继续让我输入用户名密码

                               
登录/注册后可看大图
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-11 22:49:36 | 显示全部楼层

                               
登录/注册后可看大图
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-3-11 23:00:58 | 显示全部楼层
你发的图片一直转圈圈,加载不出来
break,只是会跳出当前的那一个while循环
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-3-11 23:02:56 | 显示全部楼层
稍等,我当时测的时候好像没问题,现在的确有的,我再改改
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-3-11 23:22:02 | 显示全部楼层
print("----新建用户:1/2----")
print("----用户登陆:3/4----")
print("----退出程序:5/6----")
dictionary = {}
sign = True
temp = int(input("请输入指令数字:"))
while True:
    if temp == 1 or temp == 2:
        Newname = input("请输入创建的用户名:")
        Creatpassward = input("请输入密码:")
        dictionary[Newname] = Creatpassward
        print("创建成功")
        temp = int(input("请输入指令数字:"))
    while sign:
        if temp == 3 or temp == 4:
            name = input("请输入用户名:")
            passward = input("请输入密码:")
        else:
            break
        if name in dictionary and dictionary[name] == passward:
            print("登陆成功,欢迎进入xxoo系统")
            sign = False
            break
        else:
            print("密码或用户名错误")
            print("是否重新输入?【按yes重新输入或NO返回】")
            decision = input(":")
            if decision != "NO":
                print("请重新输入!")
                    
            else:
                print("返回")
                break
    if sign != True:
            break
    if temp == 5 or temp == 6:
        print("退出程序,谢谢使用")
        break
    else:
        print("格式错误")
        temp = int(input("请输入指令数字:"))
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-16 08:59

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表