python编程之函数思想

发布时间:2019-08-06 09:14:09编辑:auto阅读(1619)

    #!/usr/bin/python
    ##Filename: game.py
    
    from sys import exit
    from random import randint
    
    def death():
      quips = ["1-dead", "2-nice", "3-luser", "4-puppy"]
      print quips[randint(0,len(quips)-1)]
      exit(1)
    
    #death()
    
    
    def c_c():
      print "This is c_c function."
      action = raw_input("> ")
    
      if action == "shoot":
        print "you are dead!"
        return 'death'
      elif action == "dodge":
        print "you are eated!"
        return 'death'
      elif action == "joke":
        print "you can junp out."
        return 'l_w_a'
      else:
        print "DONOT."
        return 'c_c'
    
    def l_w_a():
      print "get a bomb,the code is 3 digit:"
      code = "%d%d%d" % (randint(1,9), randint(1,9), randint(1,9))
      print code
      guess = raw_input("[keypad]> ")
      guesses = 0
    
      while guess != code and guesses < 10:
        print "BZZZZEDDD!"
        guesses += 1
        guess = raw_input("[keypad]> ")
    
      if guess == code:
        print "right, place it."
        return 't_b'
      else:
        print "ship."
        return 'death'
    
    def t_b():
      print "don't want to see it off"
    
      action = raw_input("> ")
      if action == "bomb":
        print "it goes off."
        return 'death'
      elif action == "clowly place":
        print "get off this can"
        return 'e_p'
      else:
        print "DOES NOT COMPUTE!"
        return 't_b'
    
    
    def e_p():
      print "do you take?"
      good_pod = randint(1,5)
      guess = raw_input("[pod #]> ")
      print guess
      if int(guess) != good_pod:
        print "into jam jelly."
        return 'death'
      else:
        print "time ,you won!"
        exit(0)
    
        
    ROOMS = {
    'death':death,
    'c_c':c_c,
    'l_w_a':l_w_a,
    't_b':t_b,
    'e_p':e_p
    }
    
    def runner(map, start):
      next = start
    
      while True:
        room = map[next]
        print "\n-------------"
        next = room()
    
    
    runner(ROOMS, 'c_c')


关键字