-6
from sys import exit

def gold_room():
    print "This room is full of gold. How much do you take?"

    next = raw_input(">")
    if "0" in next or "1" in next:
        how_much = int(next)
    else:
        dead("Man, learn to type a number.")

    if how_much < 50:
        print "Nice, you're not greedy, you win!"
        exit(0)
    else:

    dead("You greedy bastard!")


def bear_room():    
    print "There is a bear here."    
    print "The bear has a bunch of honey."    
    print "The fat bear is in front of another door."   
    print "How are you going to move the bear?"    
    bear_moved = False   

    while True:   
        next = raw_input("> ")   

        if next == "take honey":     
            dead("The bear looks at you then slaps your face off.")    
        elif next == "taunt bear" and not bear_moved:   
            print "The bear has moved from the door. You can go through it now." 
            bear_moved = True 
        elif next == "taunt bear" and bear_moved: 
            dead("The bear gets pissed of and chews your legs off.")  
        elif next == "open door" and bear_moved: 
            gold_room()
        else:  
            print "I got no idea what that means."


def cthulhu_room():
    print "Here you see the great evil Cthulhu."
    print "He, it, whatever stares at you and you go insane."
    print "Do you flee for your life or eat your head(flee/head)?"

    next = raw_input("> ")

    if next == "flee":
        start()
    elif "head" in next:
        dead("Well that was tasty!")
    else:
        cthulhu_room()

def dead(why):
    print why, "Good job!"
    exit(0)


def dog_room():
    print "you entered a room and you see a dog sleeping and the door behind you got locked by it self"
    print "you see a sign that says this dog got a very good hearing sense, above a normals dog hearing sense."
    print "and you see a spear beneath you."
    print "and you can see that there is a bridge behind him."
    print "what will you do now?try to go to the bridge, pick up the spear, try to sneak your way to the dog and hit him or attack the door."
    print "(bridge/spear/sneak and hit/attack the door)" 

    spear = False

    while True:

        action = raw_input("Choose what you want to do")
        if action == "bridge" and not spear:
            death("the dog woke up rushed to you and ate you right after he ate your balls."
        elif action == "sneak and attack" and not spear:
            death("you sneaked your way to the dog, hit him, and the damage you made to him wasn't strong enough and he ate you right after he ate your ball.")
        elif action == "spear" and not spear:
            spear = True
            print "you took the spear. what now?" 
        elif action == "spear" and spear
            print "you already took the spear..."
        elif action == "sneak and attack" and spear:
            golden_room("you stabbed the dog and went across the safe bridge with no casualties and you managed to get to the golden room!!!!!!!!")
        elif action == "attack the door":
            print "you broke the wooden door, the dog woke up, rushed to you, you tried to escape but the dog was faster"
            print "and ate you right after he ate your balls."
            death()
        else:
            print "*face palm* come on learn how to type!" 

def start():
    print "You are in a dark room."
    print "There is a door to your right and left."
    print "Which one do you take(left/right/forward)?"

    next = raw_input("> ")

    if next == "left":
        bear_room()
    elif next == "right":
        cthulhu_room()
    elif next = "forward":
        dog_room()
    else:
        dead("You stumble around the room until you starve.")


start()

パワーシェルで実行したときの問題について:

>>>python ex35.py
what i get is:
File "ex35.py", line 77
  elif action == "sneak and attack" and not spear:
     ^

SyntaxError: invalid syntax

ヘルプ!!!私はそれを1時間、1時間、30分間理解しようとしました。行を見つけるのに問題がある場合は、dog_room() 関数内にある while ループ内にある if 行のすぐ下にあります。

4

2 に答える 2

3

閉じ括弧がありません:

death("the dog woke up rushed to you and ate you right after he ate your balls."

末尾のコロンがありません:

elif action == "spear" and spear
于 2013-09-25T17:42:14.103 に答える
0
death("the dog woke up rushed to you and ate you right after he ate your balls."
--------------------------------------------------------------------------------^

閉じ括弧がありません)

于 2013-09-25T17:43:06.450 に答える