W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
這本書的上半部分你打印了一些東西,而且調(diào)用了函數(shù),不過一切都是直線式進(jìn)行的。你的腳本從最上面一行開始,一路運行到結(jié)束,但其中并沒有決定程序流向的分支點?,F(xiàn)在你已經(jīng)學(xué)了if
,else
,和elif
,你就可以開始創(chuàng)建包含條件判斷的腳本了。
上一個腳本中你寫了一系列的簡單提問測試。這節(jié)的腳本中,你將需要向用戶提問,依據(jù)用戶的答案來做出決定。把腳本寫下來,多多鼓搗一陣子,看看它的工作原理是什么。
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 "You 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 "You stumble around and fall on a knife and die. Good job!"
這里的重點是你可以在“if語句”內(nèi)部再放一個“if語句”。這是一個很強(qiáng)大的功能,可以用來創(chuàng)建嵌套(nested),其中的一個分支將引向另一個分支的子分支。
你需要理解if語句
包含if語句
的概念。做一下附加題,確保自己真正理解了它們。
下面是我玩這個小游戲的結(jié)果,我玩的不怎么樣:
$ python ex31.py
You enter a dark room with two doors. Do you go through door #1 or door #2?
> 1
There's a giant bear here eating a cheese cake. What do you do?
1. Take the cake.
2. Scream at the bear.
> 2
The bear eats your legs off. Good job!
- 為游戲添加新的部分,改變玩家做決定的位置。盡自己的能力擴(kuò)展這個游戲,不過別把游戲弄得太怪異了。
- 寫一個全新的游戲,你可能不喜歡我提供的這個,那么自己寫一個玩玩。這是你的電腦,你可以用它做任何自己想做的事情。
if-else
替換elif
嗎?某些情況下可以, 但是這個也依賴于每一個
if/else
是怎么寫的 。這也意味著, Python會檢查每個if-else的組合,而不是只檢查if-elif-else
組合中的第一個為假的分支,嘗試用兩種方式多編寫一些代碼,以找出他們的不同點。
有兩種方法: 一種經(jīng)典的方式是使用
0 < x < 10
或者1 <= x < 10
,另一中方式是使用x in range(1, 10)
。
if-elif-else
代碼塊中增加更多的選擇?為每一個可能的選擇增加一個
elif
代碼塊。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: