《笨办法学Python》 第31课手记

《笨办法学Python》 第31课手记

本节课是一小段类似《龙与地下城》的游戏的代码,是if语句嵌套的深入,即嵌套的if语句中又出现嵌套的if语句。理论上可以嵌套许多层,至于上限是多少,暂不清楚。

原代码如下:

print "You enter a dark room with two doors.  Do you go through door #1 or door #2?"

door = raw_input("> ")

if door == "1":
   print "There's a giant bear here eating a cheese cake.  What do you do?"
   print "1. Take the cake."
   print "2. Scream at the bear."

   bear = raw_input("> ")

   if bear == "1":
      print "The bear eats your face off.  Good job!"
   elif bear== "2":
      print "The bear eats your legs off.  Good job!"
   else:
      print "Well,doing %s is probably better.  Bear runs away." % bear

elif door == "2":
   print "Your stare into the endless abyss at Cthulhu's retina."
   print "1. Blueberries."
   print "2. Yellow jacket clothespins."
   print "3. Understanding revolvers yelling melodies."

   insanity = raw_input("> ")

   if insanity == "1" or insanity =="2":
      print "Your body survives powered by a mind of jello.  Good job!"
   else:
      print "The insanity rots your eyes into a pool of muck. Good job!"

else:
   print"Your stumble around and fall on a knife and die.  Good job!"

当用户输入的数字是1,2时结果如下(注意这里的1和2都是字符型数据,不是数值):

这里写图片描述

本节课涉及的知识:

根据这段代码的思路,自上而下先列一个选择分支草图,并在草图上画出各个动作,当你觉得分支足够多时,选择其中一个分支作为找到宝藏游戏胜利,其余分支均为死亡游戏结束。这样你就写出了一个自己的《龙与地下城》游戏。

仔细阅读常见问题解答,里面有判断一个数值是否属于某个范围的语法。

posted @ 2016-02-02 22:33  从流域到海域  阅读(57)  评论(0编辑  收藏  举报