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