打印报表无限打印

时间:2017-09-26 17:04:53

标签: python printing while-loop

<compilation>

当我运行代码并且输入的密码长度超过8和24时,它只打印&#34;此密码在给定的长度范围内&#34;无限地。 我不擅长编码,我确信我做错了。

4 个答案:

答案 0 :(得分:0)

您忘记了break语句来停止循环。循环语句有问题,主要是你错过了if的{​​{1}}部分。

else

上述代码将一直运行,直到用户输入密码password=input("Please enter your chosen password within 8 and 24 letters: ") while True: #will continue until break statement executes if len(password)>8 and len(password)<24: print("this password is within the given length range") break #Quit the loop else: password=input("Please enter a password within the boundaries: ")

答案 1 :(得分:0)

如果你想不断提示他们输入密码,你需要在你的while循环中提示你的提示,并改变小于和大于标志。

password = ""
while len(password) < 8 or len(password) > 24:
    password = input("Please enter your chosen password within 8 and 24 letters: ")

答案 2 :(得分:0)

else仅在使用while退出break循环后执行(而不是在条件变为false时)。你只想要

password=input("Please enter your chosen password within 8 and 24 letters: ")
while len(password) < 8 or len(password) > 24:
    password=input("Please enter a password within the boundaries: ")

如果您不介意对两个输入使用相同的提示,请使用带有显式中断的无限循环:

while True:
    password=input("Please enter your chosen password within 8 and 24 letters: ")
    if 8 <= len(password) <= 24:
        break

答案 3 :(得分:0)

您可以在“密码”变量中存储有效密码。 while循环检查'password'是否有效,确认它是,并且它继续运行。如果用户键入无效密码而不是有效密码,您希望循环继续运行。尝试:

password=input("Please enter your chosen password within 8 and 24 letters: ")
while len(password)<8 or len(password)>24:
    password=input("Please enter a password within the boundaries: ")     

print("this password is within the given length range")