首页 > 解决方案 > 简单的 python else 函数不会运行,这将导致脚本结束

问题描述

secret_word = "Michael Jackson"
guess = ""

guess = 0


guess_limit = 5

out_of_guesses = False


guess_count = 0




while guess != secret_word and not (out_of_guesses):


 if guess_count < guess_limit:


        guess = input("Enter Guess:")


        guess_count +=1


        print("Famous Pop Star")


        if guess_count < guess_limit:


            guess = input("Enter Guess:")


            guess_count += 1


            print("Died a legend")


            if guess_count < guess_limit:


                guess = input("Enter Guess:")


                guess_count += 1


                print("Very Talented")


                if guess_count < guess_limit:


                    guess = input("Enter Guess:")


                    guess_count += 1


                    print("Died in a bathtub")


                    if guess_count < guess_limit:


                        guess = input("Enter Guess:")


                        guess_count += 1


                        print("wore a plaid shirt" )


else:


    out_of_guesses = True





if out_of_guesses:


    print("You Lose....Answer was Michael Jackson")





else:


    print("You Win! Your knowledge over music is very vast!")

最底层的 Else 函数不会运行,这将决定你是赢还是输。

标签: python

解决方案


我不知道您是否了解过python indent,但正如@JonathanK 所说,您遇到了关于 的问题if else,实际上您的代码现在是错误的。这是我的建议代码,希望它能达到您的目的:

secret_word = "Michael Jackson"
guess = ""
# guess = 0
guess_limit = 5
out_of_guesses = False
guess_count = 0

while guess != secret_word and not (out_of_guesses):

    guess = input("Enter Guess:")
    if guess_count < guess_limit and guess != secret_word:
        guess_count +=1
        print("Famous Pop Star")

        guess = input("Enter Guess:")
        if guess_count < guess_limit and guess != secret_word:
            guess_count += 1
            print("Died a legend")

            guess = input("Enter Guess:")
            if guess_count < guess_limit and guess != secret_word:
                guess_count += 1
                print("Very Talented")

                guess = input("Enter Guess:")
                if guess_count < guess_limit and guess != secret_word:
                    guess_count += 1
                    print("Died in a bathtub")

                    guess = input("Enter Guess:")
                    if guess_count < guess_limit and guess != secret_word:
                        guess_count += 1
                        print("wore a plaid shirt" )

                    else:
                        out_of_guesses = True

if out_of_guesses:
    print("You Lose....Answer was Michael Jackson")

else:
    print("You Win! Your knowledge over music is very vast!")


推荐阅读