我已附加一个文件,总结了我需要添加到代码中的内容,请有人帮助我
userNames = ["User1", "User2", "User3", "User4", "User5"]
print("Welcome to AQA User Registration")
for x in range(3):
userName = input("New username: ")
if userName in userNames:
print("The username is already used")
else:
break
for x in range(3):
userPassword = input("Password (12 characters or more): ")
if len(userPassword) < 12:
print("The password is not long enough")
else:
break
print("Your username is " + userName)
print("Your password is " + userPassword)
我尝试使用“for x in range(2)”重复3次,但即使用户输入不同的用户名,它仍然会结束程序。它不在这段代码中,因为它非常混乱。我花了 1 个小时试图弄清楚,但我无法做到,如果有人可以帮助我,我将非常感激。
您需要两个循环 - 一个用于用户名和密码输入。如果未输入有效的用户名,那么您不应继续询问密码。
您会发现 for/else 结构很有用。
这里有一个简单的方法:
import sys
userNames = ["User1", "User2", "User3", "User4", "User5"]
print("Welcome to AQA User Registration")
for _ in range(3):
u = input("New username: ")
if u.lower() in map(str.lower, userNames):
print(u, "is already in use")
else:
userNames.append(u)
break
else:
print("Too many attempts")
sys.exit()
for _ in range(3):
p = input("Password (12 characters or more): ")
if len(p) >= 12:
print("Your username is", userNames[-1])
print("Your password is", p)
break
else:
print("The password is not long enough")
else:
print("Too many attempts")