0

次のコードでエラーが発生し、何が問題なのかわかりません。

私はこれを行う方法を学ぼうとしているだけで、これはテストでした。

何が間違っているのか、それを修正する方法がわかりません。

print "Would you like to see today's weather?"

answer = input

if answer = "yes":
    print "Follow Link: http://www.weather.com/weather/right-now/Yorktown+VA+23693 "
elif answer = "no":
    print "Very well, would you like to play a guessing game?"
    if answer = "yes":
        import random

        secret = random.randint (1, 99)
        guess= 0
        tries= 0

        print "AHOY!  I'm the Dread Pirate Roberts, and I have a secret!"
        print "It is a number from 1 to 99. I'll give you 6 tries. "

        while guess != secret and tries < 6:
            guess = input("What's your guess? ")
            if guess < secret:
                print "Too low, ye scurvy dog!"
            elif guess > secret:
                print "Too high, landlubber!"
            tries = tries + 1
            if guess == secret:
                print "Avast! Ye got it! Found my secret ye did!"
    elif answer = "no":
        print "Thank you, and goodnight."
4

2 に答える 2

5

最初のエラーはここにあります:

if answer = "yes": #This would be giving you a syntax error

やりたいことは比較です(コード内のすべてのテストケースで同じです):

if answer == "yes": #Notice the double equals to sign

また、入力関数を呼び出したい:

answer = input() #Notice the parentheses 

3 番目のエラー (これは論理的なものです) :

print "Very well, would you like to play a guessing game?"
#You are missing an input statemtent
if answer = "yes":

次に、同じエラー:

print "It is a number from 1 to 99. I'll give you 6 tries. "
#You are agin missing an input statement
while guess != secret and tries < 6:
于 2012-12-31T03:56:55.407 に答える
3

AshRj が指摘したことに加えて、さらに 2 つの明らかな誤りがあります。

answer = input

これは、関数を呼び出すのではなく、実際の関数 " input" をに割り当てます。また、おそらく代わりanswerに使用したいでしょう。raw_inputを使用しますanswer = raw_input()

elif answer = "no":
    print "Very well, would you like to play a guessing game?"
    if answer = "yes":

これらの比較の間に新しい回答を取得していないため、再度テストするときanswerもそうです。no

于 2012-12-31T04:00:34.167 に答える