笨办法学Python(三十一)

习题 31: 作出决定

    这本书的上半部分你打印了一些东西,而且调用了函数,不过一切都是直线式进行的。你的脚本从最上面一行开始,一路运行到结束,但其中并没有决定程序流向的分支点。现在你已经学了 ifelse, 和 elif ,你就可以开始创建包含条件判断的脚本了。

    上一个脚本中你写了一系列的简单提问测试。这节的脚本中,你将需要向用户提问,依据用户的答案来做出决定。把脚本写下来,多多鼓捣一阵子,看看它的工作原理是什么。

 1 print "You enter a dark room with two doors.  Do you go through door #1 or door #2?"
 2 
 3 door = raw_input("> ")
 4 
 5 if door == "1":
 6     print "There's a giant bear here eating a cheese cake.  What do you do?"
 7     print "1. Take the cake."
 8     print "2. Scream at the bear."
 9 
10     bear = raw_input("> ")
11 
12     if bear == "1":
13         print "The bear eats your face off.  Good job!"
14     elif bear == "2":
15         print "The bear eats your legs off.  Good job!"
16     else:
17         print "Well, doing %s is probably better.  Bear runs away." % bear
18 
19 elif door == "2":
20     print "You stare into the endless abyss at Cthulhu's retina." 
21     print "1. Blueberries."
22     print "2. Yellow jacket clothespins."
23     print "3. Understanding revolvers yelling melodies."
24 
25     insanity = raw_input("> ")
26 
27     if insanity == "1" or insanity == "2":
28         print "Your body survives powered by a mind of jello.  Good job!"
29     else:
30         print "The insanity rots your eyes into a pool of muck.  Good job!"
31 
32 else:
33     print "You stumble around and fall on a knife and die.  Good job!"
View Code

    这里的重点是你可以在“if 语句”内部再放一个“if 语句”。这是一个很强大的功能,可以用来创建嵌套(nested)的决定,其中的一个分支将引向另一个分支的子分支。

    你需要理解 if 语句 包含 if 语句 的概念。做一下加分习题,这样你会确信自己真正理解了它们。

你应该看到的结果

    我在玩一个小冒险游戏,我玩的水平不怎么好:

 

 

加分习题

  为游戏添加新的部分,改变玩家做决定的位置。尽自己的能力扩展这个游戏,不过别把游戏弄得太怪异了。

 

习题练习

posted @ 2017-09-06 22:50  纟彖氵戋  阅读(282)  评论(0编辑  收藏  举报