Python 我的程序不断循环一行,即使结果不同

Python 我的程序不断循环一行,即使结果不同,python,task,Python,Task,我的任务是创建一个可以重新检查密码和用户名的程序,除了一个漏洞外,它还能正常工作。如果用户名或密码不匹配,则会显示“再次输入详细信息”,并按我希望的方式循环,但如果匹配,则会中断,程序停止,但在此之前会显示“再次输入详细信息”。我如何修复它,如果用户详细信息匹配,那么它会像我希望的那样打印“好”,而不是像它这样“再次输入详细信息” import time complete = False user = [["username",""],["password",""]] def Access()

我的任务是创建一个可以重新检查密码和用户名的程序,除了一个漏洞外,它还能正常工作。如果用户名或密码不匹配,则会显示“再次输入详细信息”,并按我希望的方式循环,但如果匹配,则会中断,程序停止,但在此之前会显示“再次输入详细信息”。我如何修复它,如果用户详细信息匹配,那么它会像我希望的那样打印“好”,而不是像它这样“再次输入详细信息”

import time
complete = False
user = [["username",""],["password",""]]

def Access():
    for n in range (len(user)):
        user[n][1] = input(user[n][0])

while not complete:
    Access()
    username = input("Reinput the username?")
    password = input("Reinput the password?")

    if username == user[0][0]:
        print("Good!")#what i want it to print if correct
    else:
        print("Input details again!")#what it keeps printing no matter what
    if password == user[1][1]:
        print("User has been identified, Welcome", username)
        complete = True
        break

我很确定你的订阅是错误的,但我不确定你的目的是什么。无论如何,要学会调试。添加打印语句(前面有
#debug
):


你可能的副本应该在你的其他帖子中看到我的答案。修正了这个问题,没有一个足够好的答案?
if username == user[0][0]:
    print("Good!")#what i want it to print if correct
else:
    print("Input details again!")#what it keeps printing no matter what
#debug
print( 'password compare "{}" with "{}"'.format( password, user[1][1] ) )
if password == user[1][1]:
    print("User has been identified, Welcome", username)
    complete = True
    break