如何通过while循环让这段Python代码正确无限重复执行?
解决用户名验证循环重复执行的问题
你的问题出在输入语句没有放在循环内部——原来的代码只在程序启动时执行一次input()获取用户名,之后的while循环只是反复用第一次获取的内容做判断,自然会无限打印同一个结果。
要实现整个流程重复执行,只需把输入和验证逻辑全部放到while循环体内,每次循环都会重新触发输入和判断:
while True: x = input("What is your name? ") if len(x) < 3: print("minimum 3 characters") elif len(x) > 50: print("maximum 50 characters") else: print("good")
这样每次循环都会先询问用户名,再根据输入内容给出对应提示,完全符合你想要的重复执行效果。如果需要终止循环,可以额外添加退出条件,比如当用户输入"exit"时跳出循环:
while True: x = input("What is your name? (输入exit退出) ") if x.lower() == "exit": break if len(x) < 3: print("minimum 3 characters") elif len(x) > 50: print("maximum 50 characters") else: print("good")
内容的提问来源于stack exchange,提问作者defarioo
相关产品推荐
相关产品推荐

