我正在尝试在python中创建一个注册和登录系统以进行一些家庭作业。虽然它没有按预期工作


ExistingUser = input("Please enter either Y or N: ")
if (ExistingUser) == "N" or "n":
newName = input("Please enter your name: ")
with open("Userdata.txt", "a") as f:
print(newName, file = f)
newUserID = input("Please enter your desired username: ")
with open("Userdata.txt", "a") as f:
print(newUserID, file = f)
newPassword = input("Please enter your desired password: ")
with open("Userdata.txt", "a") as f:
print(newPassword, file = f)
f.close()
elif (ExistingUser) == "Y" or "y":
existingUserID = input("Please enter your username: ")
with open("Userdata.txt") as f:
if (ExistingUserID) in f.read():
print("True")

当我输入 Y 或 y 时,它应该触发登录过程。相反,它触发了注册。

if (ExistingUser) == "N" or "n":if (ExistingUser) == "N" or True:相同,因此您的 if 条件始终True有关更多信息 - 请阅读真值测试

使用if ExistingUser in ('N', 'n'):

if ExistingUser.lower() == 'n':

请注意,无需在ExistingUser周围使用括号。

在我看来,您的 If 语句不正确 如果您将它们更改为此格式,它似乎有效

if (现有用户 == "n"或现有用户 == "n"(:

elif (现有用户 == ">

Y" 或现有用户 == "y"(:

采用以下格式: 如果(现有用户(== "N"或"n":

">

或"n"的计算结果始终为 true

相关内容

最新更新