python重复程序,而真实

Rya*_*ice 1 python if-statement while-loop

我试图让我的程序在用户输入y/n时重复,但是我对如何使用这种类型的输入时使用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..")
    ????
Run Code Online (Sandbox Code Playgroud)

另外,如果用户输入不同的字符,我想做一个else语句,但我不确定如何去做,因为我有2个不同的if语句.

Ars*_*eny 5

当您编写独立的Python程序时,使用main函数是一种很好的做法.它允许您轻松添加一些单元测试,使用您的函数或来自其他模块的类(如果您导入它们)等.

如果在不满足某些其他条件的情况下必须检查是否满足某些条件,并根据哪个条件为真执行某些操作,则可以使用if ... elif ... else语句.

另请注意,在这种情况下,您不能对程序使用input()函数.你真正想要使用的是raw_input.这两个函数之间的区别在于raw_input()将始终返回一个字符串,而input()将评估用户的输入,就好像它是在代码而不是input()中编写的一样.因此,如果用户输入"y"(带引号),则将字符串对象存储为变量的值.但是如果用户输入y(不带引号),input()将尝试对此进行评估,如果未定义y,则会抛出错误.

你可以阅读更多关于这个问题在这里.

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()
Run Code Online (Sandbox Code Playgroud)