Python会一直提示,直到有效
我正在编写一个提示输入用户名的脚本。用户名长度必须为3个或更多,10个或更少字符。我想用while重构代码,而不是重复提示Python会一直提示,直到有效,python,Python,我正在编写一个提示输入用户名的脚本。用户名长度必须为3个或更多,10个或更少字符。我想用while重构代码,而不是重复提示 def hint_username(username): if len(username) < 3: print("Invalid Username, minimum of 3 characters") myUser = input("Please enter username: ") hint_username
def hint_username(username):
if len(username) < 3:
print("Invalid Username, minimum of 3 characters")
myUser = input("Please enter username: ")
hint_username(myUser)
elif len(username) >10:
print("Invalid Username, maximum of 10 characters")
myUser = input("Please enter username: ")
hint_username(myUser)
else:
print("Valid Username")
myUser = input("Please enter username: ")
hint_username(myUser)
您可以通过一个while循环来实现这一点。我不建议递归调用函数来验证用户输入
def invalid_username(username):
return not 3 <= len(username) <= 10
myUser = input("Please enter username: ")
while invalid_username(myUser):
myUser = input(
"Invalid username! Username must be 3 to 10 characters.\n"
"Please enter username: "
)
print("Valid Username")
小心,看起来您混合了多个变量命名约定!