- 零基礎入門學習Python(第2版)
- 小甲魚
- 12字
- 2019-12-20 12:19:33
第4章 了不起的分支和循環
4.1 分支和循環

視頻講解
有人說,了不起的C語言,因為“機器碼生匯編,匯編生C,C生萬物”,C語言幾乎造就如今IT時代的一切,它是一切的開端,并且仍然沒被日新月異的時代所淘汰。
有人可能會反對,因為首先C語言不是世界上第一門編程語言,它仍然要被降級為匯編語言再到機器語言才能為計算機所理解。
這話題扯得有點太遠了,小甲魚想說的是,其實很多初學者會對編程語言有一種莫名其妙的崇拜感。所以呢,他們必須要找出一門全世界公認最牛的語言再來學習好它。
其實,世界上根本沒有最優秀的編程語言,只有最合適的語言,面對不同的環境和需求,就會有不同的編程工具去迎合。
今天的主題是“了不起的分支和循環”,為什么小甲魚不說C語言、Python了不起,卻毫不吝嗇地對分支和循環這兩個知識點那么“崇拜”呢?
大家在前面也接觸了最簡單的分支和循環的使用,那么小甲魚希望大家思考一下:如果沒有分支和循環,我們的程序會變成怎樣?
沒錯,就會變成一堆從上到下依次執行、毫無趣味的代碼!還能實現算法嗎?當然不能!
幸好,所有能稱得上編程語言的,都應該擁有分支和循環。接下來從游戲的角度來談談,“打飛機”游戲相信大家非常熟悉了,如圖4-1所示。
那么,我們就從“打飛機”這個小游戲來解釋一般程序的組成和結構。
首先進入游戲,很容易發現其實就是進入一個大循環,雖然小甲魚現在跟大家討論的是打飛機,但基本上每一個游戲的套路都是一樣的,甚至操作系統的消息機制使用的也是同樣一個大循環來完成的。游戲中只要沒有觸發死亡機制(注:這個游戲的死亡機制是撞到敵機),敵機都會不斷地生成,這足以證明整個游戲就是在一個循環中執行的。
接著來看一下分支的概念。分支也就是習慣使用的if條件判斷,在條件持續保持成立或不成立的情況下,都執行固定的流程。一旦條件發生改變,原來成立的條件就變為不成立,那么程序就走入另一條路了。就好比拿我們的飛機去撞擊敵機,如圖4-2所示。

圖4-1 打飛機游戲

圖4-2 打飛機游戲結束界面
另外,大家有沒有發現,小飛機都是一個樣子的?嗯,這說明它們是來自同一個對象的復制品。Python是面向對象的編程,對象這個概念無時無刻地融入在Python的血液里,只是暫時還沒有接觸這個概念,不用著急,后面的章節會詳細講解。
最后我要不要告訴大家這個小游戲就只是用了幾個循環和if條件就寫出來啦?沒錯,編程其實就是這么簡單。當然,大家要達到自己可以動手寫一個界面小游戲的水平,還需要掌握更多的知識!現在需要大家一起來動手,按照剛才看到的小游戲,請拿出紙和筆,嘗試將它的實現邏輯勾畫出來(可以使用文字描述,現在只談框架,不講代碼)。
參考框架如下:

- 玩轉Scratch少兒趣味編程
- Spring Boot開發與測試實戰
- R語言數據分析從入門到精通
- JIRA 7 Administration Cookbook(Second Edition)
- Java程序員面試算法寶典
- oreilly精品圖書:軟件開發者路線圖叢書(共8冊)
- R語言編程指南
- Building Mobile Applications Using Kendo UI Mobile and ASP.NET Web API
- YARN Essentials
- Unity Game Development Scripting
- Getting Started with Eclipse Juno
- OpenGL Data Visualization Cookbook
- INSTANT Yii 1.1 Application Development Starter
- Mastering Akka
- Zabbix Performance Tuning