功能介紹:
python
唐僧能夠選擇練級,也能夠打BOSS,還能夠逃跑。程序根據用戶的選擇執行相應的流程。主要深化判斷語句的使用。微信
代碼實現flex
#======================================================
#功能:唐僧打BOSS小遊戲
#做者:python小哥
#時間:2020-4-22
#微信公衆號:DJXY00001
#微信名稱:Python提高課堂
#Version:1.0
#======================================================
# 顯示歡迎信息print('-'*20,'歡迎光臨《唐僧大戰白骨精》','-'*20)# 顯示身份選擇的信息print('請選擇你的身份:')print('\t1.唐僧')print('\t2.白骨精')# 遊戲的身份選擇player_choose = input('請選擇[1-2]:')# 打印一條分割線print('-'*66)# 根據用戶的選擇來顯示不一樣的提示信息if player_choose == '1': # 選擇1 print('你已經選擇了1,你將以->唐僧<-的身份來進行遊戲!')elif player_choose == '2': # 選擇2 print('你居然選擇了白骨精,太不要臉了,你將以->唐僧<-的身份來進行遊戲!')else : # 選擇3 print('你的輸入有誤,系統將自動分配身份,你將以->唐僧<-的身份來進行遊戲!')# 進入遊戲# 建立變量,來保存玩家的生命值和攻擊力player_life = 2 # 生命值player_attack = 2 # 攻擊力# 建立一個變量,保存boss的生命值和攻擊力boss_life = 10boss_attack = 10# 打印一條分割線print('-'*66)# 顯示玩家的信息(攻擊力、生命值)print(f'唐僧,你的生命值是 {player_life} , 你的攻擊力是 {player_attack}')# 因爲遊戲選項是須要反覆顯示的,因此必須將其編寫到一個循環中while True : # 打印一條分割線 print('-'*66) # 顯示遊戲選項,遊戲正式開始 print('請選擇你要進行的操做:') print('\t1.練級') print('\t2.打BOSS') print('\t3.逃跑') game_choose = input('請選擇要作的操做[1-3]:') # 處理用戶的選擇 if game_choose == '1' : # 增長玩家的生命值和攻擊力 player_life += 2 player_attack += 2 # 顯示最新的信息 # 打印一條分割線 print('-'*66) # 顯示玩家的信息(攻擊力、生命值) print(f'恭喜你升級了!,你如今的生命值是 {player_life} , 你的攻擊力是 {player_attack}') elif game_choose == '2' : # 玩家攻擊boss # 減去boss的生命值,減去的生命值應該等於玩家的攻擊力 boss_life -= player_attack # 打印一條分割線 print('-'*66) print('->唐僧<- 攻擊了 ->白骨精<-') # 檢查boss是否死亡 if boss_life <= 0 : # boss死亡,player勝利,遊戲結束 print(f'->白骨精<-受到了 {player_attack} 點傷害,重傷不治死了,->唐僧<-贏得了勝利!') # 遊戲結束 break # boss要反擊玩家 # 減去玩家的生命值 player_life -= boss_attack print(' ->白骨精<- 攻擊了 ->唐僧<-') # 檢查玩家是否死亡 if player_life <= 0 : # 玩家死亡 print(f'你受到了 {boss_attack} 點傷害,重傷不治死了!GAME OVER') # 遊戲結束 break elif game_choose == '3' : # 打印一條分割線 print('-'*66) # 逃跑,退出遊戲 print('->唐僧<-一扭頭,撒腿就跑!GAME OVER') break else : # 打印一條分割線 print('-'*66) print('你的輸入有誤,請從新輸入!')
輸出結果:
url
-------------------- 歡迎光臨《唐僧大戰白骨精》 --------------------spa
請選擇你的身份:.net
1.唐僧code
2.白骨精orm
請選擇[1-2]:1blog
------------------------------------------------------------------遊戲
你已經選擇了1,你將以->唐僧<-的身份來進行遊戲!
------------------------------------------------------------------
唐僧,你的生命值是 2 , 你的攻擊力是 2
------------------------------------------------------------------
請選擇你要進行的操做:
1.練級
2.打BOSS
3.逃跑
請選擇要作的操做[1-3]:1
------------------------------------------------------------------
恭喜你升級了!,你如今的生命值是 4 , 你的攻擊力是 4
------------------------------------------------------------------
請選擇你要進行的操做:
1.練級
2.打BOSS
3.逃跑
請選擇要作的操做[1-3]:2
------------------------------------------------------------------
->唐僧<- 攻擊了 ->白骨精<-
->白骨精<- 攻擊了 ->唐僧<-
你受到了 10 點傷害,重傷不治死了!GAME OVER
程序分析
本程序先讓用戶選擇身份,是唐僧仍是白骨精。
若是用戶輸入的是1,表明用戶選擇的是唐僧。不然選擇2的話,系統仍然強制用戶以唐僧的身份進行遊戲。若是輸入的既不是1也不是2的話,提示用戶輸入有誤,系統自動以唐僧的身份進行遊戲。
程序23至27行,初始化唐僧和BOSS的生命值和攻擊力。
程序29至31行,輸出提示,玩家的生命值和攻擊力。
程序第33行直到結束,爲循環語句,主要用戶判斷用戶的重複輸入。直到
唐僧或者BOSS的生命值攻擊爲小於等於0的值,程序就退出。
第43行,判斷當用戶輸入1時,用戶的生命值和攻擊力增長2。
第52行,判斷當用戶輸入2時,先用BOSS的生命值減去玩家的攻擊力,判斷BOSS是否死亡;若BOSS死亡,程序結束;若BOSS未死亡,則再用玩家的生命值減去BOSS的攻擊力,判斷玩家是否死亡。
程序第75行,若用戶輸入3,則表明唐僧逃跑,程序結束。
若用戶輸入的不是一、二、3,則提示用戶輸入錯誤。
備註:關注本公衆號,回覆數字,得對應年月講解案例的全部代碼,規則爲年的後兩位+月份
如:2002,表明2020年2月,2003,表明2020年3月,依此類推(代碼從2020年2月開始,截止目前月份的上一個月爲止)
![](http://static.javashuo.com/static/loading.gif)
長按二維碼
查看更多吧
![](http://static.javashuo.com/static/loading.gif)
本文分享自微信公衆號 - Python提高課堂(DJXY00001)。
若有侵權,請聯繫 support@oschina.cn 刪除。
本文參與「OSC源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。