我试图让我的程序在用户输入 y/n 时重复,但是我对如何在这种类型的输入中使用 while true 感到困惑,下面是一些代码。
again = input("Would you like to play again? enter y/n: ")
if again == "n":
print ("Thanks for Playing!")
quit
if again == "y":
print ("Lets play again..")
????
另外,如果用户输入不同的字符,我想做一个 else 语句,但考虑到我有 2 个不同的 if 语句,我不确定如何去做。
当您编写独立的 Python 程序时,使用 main 函数是一个很好的做法。它允许您轻松添加一些单元测试,使用其他模块中的函数或类(如果您导入它们)等。
如果您必须检查某个条件是否满足,以防其他条件不满足,并根据哪个条件为真执行一些操作,您可以使用 if...elif...else 语句。
另请注意,在这种情况下,您不能在程序中使用 input() 函数。这里你真正想要使用的是 raw_input。这两个函数之间的区别在于 raw_input() 将始终返回一个字符串,而 input() 将评估用户的输入,就好像它是在代码中而不是 input() 中编写的一样。因此,如果用户输入“y”(带引号),则会将字符串对象存储为变量的值。但是如果用户输入 y(不带引号),input() 将尝试对其进行计算,如果 y 未定义,则会抛出错误。
您可以阅读有关此主题的更多信息here.
def main():
while True:
again = raw_input("Would you like to play again? Enter y/n: ")
if again == "n":
print ("Thanks for Playing!")
return
elif again == "y":
print ("Lets play again..")
else:
print ("You should enter either \"y\" or \"n\".")
if __name__ == "__main__":
main()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)