1.2.3 在Windows系統中搭建Python程式設計環境
1.4.1 在Linux和OS X系統中從終端運行Python程式
1.4.2 在Windows系統中從終端運行Python程式
10.4.1 使用json.dump()和json.load()
15.1.3 在Windows系統中安裝matplotlib
20.1.2 使用Bootstrap來設置專案“學習筆記”的樣式
20.2.4 創建包含包列表的檔requirements.txt
20.2.6 為部署到Herohu而修改settings.py
B.2.3 在Windows系統中安裝Sublime Text
B.2.4 在Sublime Text中運行Python程式
前言
如何學習編寫第一個程式,每個程式師都有不同的故事。我還是個孩子時就開始學習程式設計了,當時我父親在計算時代的先鋒之一——數位設備公司(Digital Equipment Corporation)工作。我使用一台簡陋的電腦編寫了第一個程式,這台電腦是父親在家裡的地下室組裝而成的,它沒有主機殼,裸露的主機板與鍵盤相連,顯示器是裸露的陰極射線管。我編寫的這個程式是一款簡單的猜數字遊戲,其輸出類似於下面這樣:
I'm thinking of a number! Try to guess the number I'm thinking of: 25
Too
low! Guess again: 50
Too
high! Guess again: 42
That's
it! Would you like to play again? (yes/no) no
Thanks for playing!
看到家人玩著我編寫的遊戲,而且它完全按我預期的方式運行,我心裡不知有多滿足。此情此景我永遠都忘不了。
兒童時期的這種體驗一直影響我至今。現在,每當我通過編寫程式解決了一個問題時,心裡都會感到非常滿足。相比於孩提時期,我現在編寫的軟體滿足了更大的需求,但通過編寫程式獲得的滿足感幾乎與從前一樣。
讀者對象
本書旨在讓你儘快學會Python,以便能夠編寫能正確運行的程式——遊戲、資料視覺化和Web應用程式,同時掌握讓你終身受益的基本程式設計知識。本書適合任何年齡的讀者閱讀,它不要求你有任何Python程式設計經驗,甚至不要求你有程式設計經驗。如果你想快速掌握基本的程式設計知識以便專注于開發感興趣的專案,並想通過解決有意義的問題來檢查你對新學概念的理解程度,那麼本書就是為你編寫的。本書還可供初中和高中教師用來通過開發專案向學生介紹程式設計。
本書內容
本書旨在讓你成為優秀的程式師,具體地說,是優秀的Python程式師。通過閱讀本書,你將迅速掌握程式設計概念,打下堅實的基礎,並養成良好的習慣。閱讀本書後,你就可以開始學習Python高級技術,並能夠更輕鬆地掌握其他程式設計語言。
在本書的第一部分,你將學習編寫Python程式時需要熟悉的基本程式設計概念,你剛接觸幾乎任何程式設計語言時都需要學習這些概念。你將學習各種資料以及在程式中將資料存儲到清單和字典中的方式。你將學習如何創建資料集合以及如何高效地遍歷這些集合。你將學習使用while 和if 語句來檢查條件,並在條件滿足時執行代碼的一部分,而在條件不滿足時執行代碼的另一部分——這可為自動完成處理提供極大的幫助。
你將學習獲取使用者輸入,讓程式能夠與使用者交互,並在用戶沒停止輸入時保持運行狀態。你將探索如何編寫函數來讓程式的各個部分可重用,這樣你編寫執行特定任務的代碼後,想使用它多少次都可以。然後,你將學習使用類來擴展這種概念以實現更複雜的行為,從而讓非常簡單的程式也能處理各種不同的情形。你將學習編寫妥善處理常見錯誤的程式。學習這些基本概念後,你就能編寫一些簡短的程式來解決一些明確的問題。最後,你將向中級程式設計邁出第一步,學習如何為代碼編寫測試,以便在進一步改進程式時不用擔心可能引入bug。第一部分介紹的知識讓你能夠開發更大、更複雜的專案。
在第二部分,你將利用在第一部分學到的知識來開發三個專案。你可以根據自己的情況,以最合適的順序完成這些專案;你也可以選擇只完成其中的某些項目。在第一個項目(第12~14章)中,你將創建一個類似於《太空入侵者》的射擊遊戲。這個遊戲名為《外星人入侵》,它包含多個難度不斷增加的等級。完成這個項目後,你就能夠自己動手開發2D遊戲了。
第二個項目(第15~17章)介紹資料視覺化。資料科學家的目標是通過各種視覺化技術來搞懂海量資訊。你將使用通過代碼生成的資料集、已經從網路下載下來的資料集以及程式自動下載的資料集。完成這個項目後,你將能夠編寫能對大型資料集進行篩選的程式,並以視覺化方式將篩選出來的資料呈現出來。
在第三個項目(第18~20章)中,你將創建一個名為“學習筆記”的小型Web應用程式。這個項目能夠讓用戶將學到的與特定主題相關的概念記錄下來。你將能夠分別記錄不同的主題,還可以讓其他人建立帳戶並開始記錄自己的學習筆記。你還將學習如何部署這個項目,讓任何人都能夠通過網路訪問它,而不管他身處何方。
為何使用Python
繼續使用Python,還是轉而使用其他語言——也許是程式設計領域較新的語言?我每年都會考慮這個問題。可我依然專注於Python,其中的原因很多。Python是一種效率極高的語言:相比於眾多其他的語言,使用Python編寫時,套裝程式含的代碼行更少。Python的語法也有助於創建整潔的代碼:相比其他語言,使用Python編寫的代碼更容易閱讀、調試和擴展。
大家將Python用於眾多方面:編寫遊戲、創建Web應用程式、解決商業問題以及供各類有趣的公司開發內部工具。Python還在科學領域被大量用於學術研究和應用研究。
我依然使用Python的一個最重要的原因是,Python社區有形形色色充滿激情的人。對程式師來說,社區非常重要,因為程式設計絕非孤獨的修行。大多數程式師都需要向解決過類似問題的人尋求建議,經驗最為豐富的程式師也不例外。需要有人説明解決問題時,有一個聯繫緊密、互幫互助的社區至關重要,而對於像你一樣將Python作為第一門語言來學習的人而言,Python社區無疑是堅強的後盾。
Python是一門傑出的語言,值得你去學習,咱們現在就開始吧!

0 留言:
發佈留言