如何在用户输入正确的用户名和密码之前使程序循环

时间:2016-03-26 02:13:40

标签: python

我已经制作了一个程序,要求输入用户名和密码,直到输入正确。

代码:

def main():
    endProgram ="no"
    while endProgram =="no":
        print("Welcome to the program :D")
        print("-------------------------")

        username =778922
        password =2713
        login = ""
        while login ==username:
            username = int(input("Username: "))
            password = int(input("Passowrd: "))


        endProgram = raw_input("Do you wish to end the program")

main()

2 个答案:

答案 0 :(得分:0)

您的while循环永远不会有任何不同,因为您先将endProgram设置为'no'

此处的代码将提示用户输入他们的登录信息(用户名),如果找不到用户名则重复:

def main():
    endProgram = input('do you wish to end the program?')
    while endProgram == 'no':
        print('Welcome')
        username = 778922
        password = 2713
        login = input('What\'s your login info?')
        if login==username:
            username = int(input("Username: "))
            password = int(input("Password: "))

main()

答案 1 :(得分:0)

将while循环的条件更改为:

while username != input_name or password != input_password:
    #continue to take inputs or end program

这样你的内部while循环将继续循环,直到输入正确的用户名。要退出此循环,如果用户无法输入正确的用户名或密码,您可以执行以下操作

endProgram = raw_input("Do you wish to end the program")
if endProgram == "yes":
    break