为何break语句无法跳出while循环? | python | python 技术论坛-大发黄金版app下载

程序如下:

about="作者"
while true:
    print("这个程序有各种功能")
    print("但在这之前,你要先登录\n你有账号吗?")
    sing_in=input("如果你有账号,请输入“登录”,如果没有,请输入“注册”")
    while true:
            if sing_in=="登录" or sing_in=="注册":
                break
            else:
                print("请重新输入!")
                sing_in=input("如果你有账号,请输入“登录”,如果没有,请输入“注册”")
    while sing_in=="登录" or "注册":
        if sing_in=='注册':
            admin=input('请属于账号名称(请用英文)')
            password=input("请输入密码")
            password_2=input("请确认密码")
            if password==password_2:
                user=[f"{admin}",{password}]
            else:
                print("账号密码不同")
                time.sleep(99999999)
        elif sing_in=="登录":
            l_admin=input("请输入账号")
            l_password=input("请输入密码")
            if l_admin==f"{admin}" and l_password==f"{admin}":
                print("登陆成功")
            else:
                print("账号、密码错误,请重试")
                time.sleep(9999999999)
        elif sing_in=="about":
            print(f"程序由{about}制作,我把它命名为:xxx。")
            about_singup=input("如果你有账号,请输入“登录”,如果没有,请输入“注册”")
            if sing_in=='注册':
                admin=input('请属于账号名称(请用英文)')
                password=input("请输入密码")
                password_2=input("请确认密码")
                if password==password_2:
                    user=[f"{admin}",{password}]
                else:
                    print("账号密码不同")
                    time.sleep(time_)
            elif about_singup=="登录":
                l_admin=input("请输入账号")
                l_password=input("请输入密码")
                if l_admin==f"{admin}" and l_password==f"{admin}":
                    print("登陆成功")
                else:
                    print("账号、密码错误,请重试")
                    time.sleep(9999999999)
            elif about_singup=="about":
                print("这不是一个有效的指令")
                print("请回吧")
                time.sleep(9999999999)
            else:
                print("这不是一个有效的指令")
                print("请回吧")
                time.sleep(999999999)

第八行中,如果输入了“登录”或“注册”,那么就退出循环,继续执行后面的程序。但是当我输入注册后,程序没有跳出循环,继续让我重新输入,请问怎么回事,怎么解决?

jason990420
最佳答案

第八行中,如果输入了 “登录” 或 “注册”,那么就退出循环,继续执行后面的程序。但是当我输入注册后,程序没有跳出循环,继续让我重新输入

第八行中,如果输入了 “登录” 或 “注册”,就會退出该循环,继续执行后面的程序。

d:\>python test.py
这个程序有各种功能
但在这之前,你要先登录
你有账号吗?
如果你有账号,请输入“登录”,如果没有,请输入“注册”注册    # 第八行中,如果输入了 "注册"
请属于账号名称(请用英文)jason                        # 已退出循环,继续执行后面的程序
请输入密码12345
请确认密码12345
请属于账号名称(请用英文)john
请输入密码54321
请确认密码54321
2个月前
讨论数量: 1
jason990420

第八行中,如果输入了 “登录” 或 “注册”,那么就退出循环,继续执行后面的程序。但是当我输入注册后,程序没有跳出循环,继续让我重新输入

第八行中,如果输入了 “登录” 或 “注册”,就會退出该循环,继续执行后面的程序。

d:\>python test.py
这个程序有各种功能
但在这之前,你要先登录
你有账号吗?
如果你有账号,请输入“登录”,如果没有,请输入“注册”注册    # 第八行中,如果输入了 "注册"
请属于账号名称(请用英文)jason                        # 已退出循环,继续执行后面的程序
请输入密码12345
请确认密码12345
请属于账号名称(请用英文)john
请输入密码54321
请确认密码54321
2个月前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!
网站地图