欢迎。拒绝!!!按回车键退出
welcome. denied!!! press enter to quit
我试图为我的家人创建一个用户名和密码程序,但是当我打开它时它显示:
Welcome.
Denied!!!
Press enter to quit.
谁能解决我的问题?代码如下:
print ("Welcome.")
username = ("Please enter your username.")
if username == ("mom, savanna, joseph"):
print ("Granted.")
password = input ("Please enter your password.")
if password == ("1975, 2000, jesus"):
print ("Granted.")
question = ("Do you like it?")
if question == ("yes"):
print ("I thought you would.")
if question == ("no"):
print ("I guess I could do better")
else:
print ("error")
else:
print ("Denied!!!")
else:
print ("Denied!!!")
input ("press enter to quit")
你问的是 if username == ("mom, savanna, joseph")
而不是 if username in ("mom, savanna, joseph")
如果你在询问时输入 "mom" 作为用户名,这就像比较这个
if "mom" == ("mom, savanna, joseph"):
("mom, savanna, joseph")
和 "mom"
不相等
检查项目是否在列表中使用 in
关键字
>>> x = [0, 1, 2, 3, 4]
>>> 3 in x
True
你在检查时也做了同样的事情 if password ==
@Alexander O'Mara 也是正确的,您从未对用户名
执行 input()
您的主要问题在这一行:
username = ("Please enter your username.")
我想你的意思是要在那里调用 input
函数。
username = input("Please enter your username.")
这将解决您立即被拒绝的问题。
你在这条线上也有同样的问题:
question = ("Do you like it?")
也应该是:
question = input("Do you like it?")
事情是这样的:
您是编码新手。我们可以在这里看到。但是,总有改进的余地,您可以从错误中学习。有些人有时会编写奇怪的代码 ;)
我已经创建了一个工作模型供您查看哪里出错了。
print ("Welcome.")
username = input("Please enter your username.")
if username in ("mom", "savanna", "joseph"):
password = input("Please enter your password.")
if password in ("1975","2000","jesus"):
print ("Granted.")
question = input("Do you like it?")
if question == ("yes"):
print ("I thought you would.")
elif question == ("no"):
print ("I guess I could do better")
else:
print ("error")
else:
print ("Denied!!!")
break
您输入的 question = ("Do you like it?")
没有 input
。这很重要,因为它实际上允许用户键入内容。
你写了if username == ("mom,savanna,joseph")
这意味着如果用户名是 mom,savanna,joseph
那么你就可以进入。显然你只想其中一个进入。布尔运算符 or
在这种情况下可以提供很多帮助。
请注意我是如何使用 elif
而不是 if
的。 Python只能有一个if和一个else。但是你想要多少 elifs 就多少。表示else-if.
编辑:
阅读 Joel 的评论后,我注意到您可能希望妈妈的密码为 1975,Savannah 的密码为 2000,Joseph 的密码为 jesus。您认为如何使用我在此处给出的代码来做到这一点?
我假设你想要 3 个不同的用户名,妈妈的密码是 1975 等等。
password = {"mom":"1975", "savanna":"2000", "joseph":"jesus"}
print ("Welcome.")
username = input("Please enter your username.")
if username in password: #if x in dict returns True if dict has the key x
print ("Granted.")
mypassword = input ("Please enter your password.")
if mypassword == password[username]:
print ("Granted.")
answer = input("Do you like it?")
if answer == ("yes"):
print ("I thought you would.")
elif answer == ("no"):
print ("I guess I could do better")
else:
print ("error")
else:
print ("Denied!!!")
else:
print ("Denied!!!")
input("press enter to quit")
您可能想围绕它设置一个循环,这样它就不必在出现错误条目时重新启动。
我试图为我的家人创建一个用户名和密码程序,但是当我打开它时它显示:
Welcome.
Denied!!!
Press enter to quit.
谁能解决我的问题?代码如下:
print ("Welcome.")
username = ("Please enter your username.")
if username == ("mom, savanna, joseph"):
print ("Granted.")
password = input ("Please enter your password.")
if password == ("1975, 2000, jesus"):
print ("Granted.")
question = ("Do you like it?")
if question == ("yes"):
print ("I thought you would.")
if question == ("no"):
print ("I guess I could do better")
else:
print ("error")
else:
print ("Denied!!!")
else:
print ("Denied!!!")
input ("press enter to quit")
你问的是 if username == ("mom, savanna, joseph")
而不是 if username in ("mom, savanna, joseph")
如果你在询问时输入 "mom" 作为用户名,这就像比较这个
if "mom" == ("mom, savanna, joseph"):
("mom, savanna, joseph")
和 "mom"
不相等
检查项目是否在列表中使用 in
关键字
>>> x = [0, 1, 2, 3, 4]
>>> 3 in x
True
你在检查时也做了同样的事情 if password ==
@Alexander O'Mara 也是正确的,您从未对用户名
执行input()
您的主要问题在这一行:
username = ("Please enter your username.")
我想你的意思是要在那里调用 input
函数。
username = input("Please enter your username.")
这将解决您立即被拒绝的问题。
你在这条线上也有同样的问题:
question = ("Do you like it?")
也应该是:
question = input("Do you like it?")
事情是这样的:
您是编码新手。我们可以在这里看到。但是,总有改进的余地,您可以从错误中学习。有些人有时会编写奇怪的代码 ;)
我已经创建了一个工作模型供您查看哪里出错了。
print ("Welcome.")
username = input("Please enter your username.")
if username in ("mom", "savanna", "joseph"):
password = input("Please enter your password.")
if password in ("1975","2000","jesus"):
print ("Granted.")
question = input("Do you like it?")
if question == ("yes"):
print ("I thought you would.")
elif question == ("no"):
print ("I guess I could do better")
else:
print ("error")
else:
print ("Denied!!!")
break
您输入的 question = ("Do you like it?")
没有 input
。这很重要,因为它实际上允许用户键入内容。
你写了if username == ("mom,savanna,joseph")
这意味着如果用户名是 mom,savanna,joseph
那么你就可以进入。显然你只想其中一个进入。布尔运算符 or
在这种情况下可以提供很多帮助。
请注意我是如何使用 elif
而不是 if
的。 Python只能有一个if和一个else。但是你想要多少 elifs 就多少。表示else-if.
编辑:
阅读 Joel 的评论后,我注意到您可能希望妈妈的密码为 1975,Savannah 的密码为 2000,Joseph 的密码为 jesus。您认为如何使用我在此处给出的代码来做到这一点?
我假设你想要 3 个不同的用户名,妈妈的密码是 1975 等等。
password = {"mom":"1975", "savanna":"2000", "joseph":"jesus"}
print ("Welcome.")
username = input("Please enter your username.")
if username in password: #if x in dict returns True if dict has the key x
print ("Granted.")
mypassword = input ("Please enter your password.")
if mypassword == password[username]:
print ("Granted.")
answer = input("Do you like it?")
if answer == ("yes"):
print ("I thought you would.")
elif answer == ("no"):
print ("I guess I could do better")
else:
print ("error")
else:
print ("Denied!!!")
else:
print ("Denied!!!")
input("press enter to quit")
您可能想围绕它设置一个循环,这样它就不必在出现错误条目时重新启动。