笨办法学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 @   纟彖氵戋  阅读(285)  评论(0)    收藏  举报
编辑推荐:
· C#高性能开发之类型系统:从 C# 7.0 到 C# 14 的类型系统演进全景
· 从零实现富文本编辑器#3-基于Delta的线性数据结构模型
· 记一次 .NET某旅行社酒店管理系统 卡死分析
· 长文讲解 MCP 和案例实战
· Hangfire Redis 实现秒级定时任务,使用 CQRS 实现动态执行代码
阅读排行:
· C#高性能开发之类型系统:从 C# 7.0 到 C# 14 的类型系统演进全景
· 管理100个小程序-很难吗
· 基于Blazor实现的运输信息管理系统
· 如何统计不同电话号码的个数?—位图法
· 微信支付功能的设计实现与关键实践(UniApp+Java)全代码
点击右上角即可分享
微信分享提示