
為什麼要學習計算機程式設計
程式設計會培養創造能力、邏輯能力和解決問題的能力。編寫程式的人有機會從無到有創造新事物,使用邏輯來把程式變成計算機可以運作的程式。在出了問題的時候你需要用解決問題的能力來找出是哪裡不對。程式設計是一項既有趣,有時候又充滿挑戰的事情。從中學到的技巧對于學校和工作都很有用。就算你的職業方向和計算機沒有關系也是這樣。
除此之外,程式設計起碼是外面天氣不好的下午打發時間的好主意。
為什麼是python
對于初學者來講,python是一款既容易學又相當有用的程式設計語言。相對于其他語言,它的代碼相當易讀,并且它有shell程式讓你可以輸入并運作程式。python的一些功能對于輔助學習過程很有效,讓你可以把一些簡單的動畫放在一起來制作自己的遊戲。其中之一是turtle子產品,靈感來自于海龜作圖(20世紀60年代由logo語言使用),專門用作教育目的。還有tkinter子產品,它是tk圖形界面的接口,可以簡單地建立稍微複雜一點的圖形和動畫程式。
怎樣學習寫代碼
正如你首次嘗試任何事情一樣,最好從最基本的地方開始,是以要從第1章開始,别急着跳到後面的章節。誰也不能剛拿起一件樂器就馬上能演奏交響樂。飛行員學員不會在掌握基本控制之前就去開飛機。體操運動員(一般來講)不會第一次嘗試就能翻跟頭。如果你向前跳得太快,不但基礎知識學得不牢,後面的章節也會讓你覺得很複雜。
在閱讀本書的過程中要自己動手試一試給出的那些例子。大多數章節後還有一些程式設計練習供你嘗試,它們能幫你提高程式設計技巧。要記住,你對基礎了解得越好,以後你了解複雜問題時越輕松。
當你受到挫折或者面臨太大的挑戰時,下面是一些我覺得有用的東西。
1.把大問題拆成小問題。嘗試了解一小段代碼是做什麼的,或者隻考慮困難問題的一小部分(隻關注于一小段代碼而不是嘗試一下子整個了解)。
2.如果這樣還不行,有時候不妨把它放到一邊一段時間。先不去理它,過幾天再回來。這對解決很多問題都很有效,尤其對于程式員來講。
這本書是寫給誰看的
這本書寫給任何對計算機程式設計有興趣的人并且首次接觸程式設計的人,不論小孩還是大人。如果想學習如何自己寫軟體,而不隻是使用别人開發的程式,那麼這本書将是個好的開始。
接下來的章節會幫助你安裝python,開啟pythonshell程式以及執行簡單計算,在螢幕上列印文本還有建立清單,用if語句和for循環執行簡單的過程控制操作(還有if語句和for循環是什麼)。你還會學到如何用函數來重用代碼,基本的類和對象的知識,還有衆多的python内建函數及子產品的介紹。
有不同章節分别介紹簡單和進階海龜作圖,還有用tkinter子產品在計算機螢幕上畫圖。在很多章節的後面都有不同難度的程式設計練習題,這些練習讓讀者自己動手寫小程式,以此來鞏固剛剛學到的知識。
當你打好程式設計知識的基礎後,你會學習如何寫你自己的程式。你将開發兩個圖形遊戲并學習沖突檢測、事件,還有各種動畫技術。
本書中大多數例子是用python的idle程式做的。idle提供了文法高亮、複制粘貼功能(和其他應用程式相似),它還有一個編輯器視窗讓你可以儲存代碼以後再用,也就是說idle既是一個做試驗的互動環境又有點像一個文本編輯器。這些例子在标準控制台和普通的文本編輯器上都同樣适用,但是idle提供的文法高亮和還算友好的環境可以幫你更好地了解。是以最前面的章節會教你如何使用它。
本書的内容
下面是每章内容的簡單介紹。
第1章是安裝python的操作指南。
第2章介紹基本的計算和變量。
第3章介紹一些基本的python類型,如字元串、清單和元組等。
第4章初次接觸turtle(海龜)子產品。我們從基本的程式設計轉移到讓海龜(一個看上去像箭頭的形狀)在螢幕上移動。
第5章涵蓋了條件的變化以及if語句。
第6章接着講了for循環和while循環。
從第7章開始,我們學會了使用和建立函數。然後在第8章我們講了類和對象。我們講到了足夠讓我們在本書的後面章節中開發電腦遊戲所需的基本概念和程式設計技術。從這時開始,書中的内容開始有點複雜了。
第9章介紹了python中大多數的内建函數。第10章繼而介紹了python預設安裝的幾個子產品(子產品基本上就是一些有用的功能的集合)。
第11章再回到turtle子產品,讓讀者用到更複雜的形狀。第12章使用tkinter子產品來建立更進階的圖形。
在第13章和第14章,我們創造了第一個遊戲《彈球》,它是用我們在前面章節中學到的知識創造出來的。在第15到18章,我們創造了另一個遊戲《火柴人逃生》。這些遊戲開發章節中你可能會遇到很棘手的問題。
在“結束語”部分,我們參考了pygame子產品還有其他一些流行的程式設計語言。
最後,在附錄中,你會了解到python關鍵字的細節。在術語表中,你會找到本書中用到的程式設計術語的定義。
[第1部分 學習程式設計
第1章 python不是大蟒蛇
<a href="https://yq.aliyun.com/articles/96031/">1.2 安裝python</a>
1.2.1 在windows 7上安裝python
1.2.2 在蘋果os x上安裝python
1.2.3 在ubuntu上安裝python
<a href="https://yq.aliyun.com/articles/96041/">1.3 當你安裝好python以後</a>
<a href="https://yq.aliyun.com/articles/96051/">1.4 儲存python程式</a>
<a href="https://yq.aliyun.com/articles/96054/">1.5 你學到了什麼</a>
[第2章 計算與變量
2.1.1 python的運算符
2.1.2 運算的順序
<a href="https://yq.aliyun.com/articles/96076/">2.2 變量就像是标簽</a>
<a href="https://yq.aliyun.com/articles/96082/">2.3 使用變量</a>
<a href="https://yq.aliyun.com/articles/96086/">2.4 你學到了什麼</a>
第3章 字元串、清單、元組和字典
第4章 用海龜畫圖
第5章 用if和else來提問
第6章 循環
第7章 使用函數和子產品來重用你的代碼
第8章 如何使用類和對象
第9章 python的内建函數
第10章 常用的python子產品
第11章 進階海龜作圖
第12章 用tkinter畫進階圖形
第2部分 彈球執行個體
第13章 你的第一個遊戲:彈球
第14章 完成你的第一個遊戲:反彈吧,小球!
第3部分 火柴人執行個體
第15章 火柴小人遊戲的圖形
第16章 開發火柴人遊戲
第17章 建立火柴人
第18章 完成火柴人逃生遊戲
結束語 接下來學什麼
附錄 python的關鍵字
<a href="https://yq.aliyun.com/articles/96110/">術語表</a>