官术网_书友最值得收藏!

前言

如何學習編寫第一個程序,每個程序員都有不同的故事。我在還是個孩子時就開始學習編程了,當時我父親在計算時代的先鋒之一——數字設備公司(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!

看到家人玩著我編寫的游戲,而且它完全按我預期的方式運行,我心里不知有多滿足。此情此景我永遠也忘不了。

兒童時期的這種體驗一直影響我至今。現(xiàn)在,每當我通過編寫程序解決了一個問題時,心里都會感到非常滿足。相比于年少時,我現(xiàn)在編寫的軟件滿足了更大的需求,但通過編寫程序獲得的滿足感幾乎與從前一樣。

本書旨在讓你盡快學會 Python,以便編寫出能正確運行的程序——游戲、數據可視化和 Web 應用程序,同時掌握讓你終身受益的基本編程知識。本書適合任何年齡的讀者閱讀,它不要求你有 Python 編程經驗,甚至不要求你有編程經驗。如果你想快速掌握基本的編程知識以便專注于開發(fā)感興趣的項目,并想通過解決有意義的問題來檢查你對新概念的理解程度,那么本書就是為你編寫的。本書可供 Python 教師通過開發(fā)項目向學生介紹編程。如果你是剛開始學習 Python 的大學生,覺得指定的教材不那么容易理解,那么閱讀本書將讓學習過程變得更輕松。如果你想轉行當程序員,本書可幫助你走上更滿意的職業(yè)道路。總而言之,本書適合目標各異的各類讀者閱讀。

本書旨在讓你成為優(yōu)秀的程序員,具體地說,是優(yōu)秀的 Python 程序員。通過閱讀本書,你將迅速掌握編程概念,打下堅實的基礎,并養(yǎng)成良好的習慣。閱讀本書后,你就可以開始學習 Python 高級技術,并能夠更輕松地掌握其他編程語言。

在本書的第一部分,你將學習編寫 Python 程序時需要熟悉的基本編程概念,你在剛接觸幾乎任何編程語言時都需要學習這些概念。你將學習各種數據以及在程序中存儲數據的方式。你將學習如何創(chuàng)建數據集合(如列表和字典),以及如何高效地遍歷它們。你將學習使用 while 循環(huán)和 if 語句來檢查條件,并在滿足條件時執(zhí)行代碼的一部分,而在不滿足條件時執(zhí)行代碼的另一部分——這可為流程自動化提供極大的幫助。

你將學習獲取用戶輸入,讓程序能夠與用戶交互,并在用戶沒停止輸入時保持運行狀態(tài)。你將探索如何編寫函數來讓程序的各個部分可復用,這樣在編寫好執(zhí)行特定任務的代碼后,可以無限制地多次使用。然后,你將學習使用類來擴展這種概念以實現(xiàn)更復雜的行為,從而讓非常簡單的程序也能處理各種不同的情形。你將學習編寫能妥善處理常見錯誤的程序。學習這些基本概念后,你將使用學到的知識編寫大量越來越復雜的程序。最后,你將向中級編程邁出第一步,學習如何為代碼編寫測試,以便在進一步改進程序時免于擔心可能引入 bug。第一部分介紹的知識讓你能夠開發(fā)更大、更復雜的項目。

在第二部分,你將利用在第一部分學到的知識來開發(fā)三個項目。你既可以根據自己的情況,以最合適的順序完成這些項目,也可以選擇只完成其中的某個項目。在第一個項目(第 12~14 章)中,你將創(chuàng)建一個類似于《太空入侵者》的射擊游戲,這個游戲名為《外星人入侵》,包含多個難度不斷增加的等級。完成這個項目后,你就完全能夠自己動手開發(fā) 2D 游戲了。就算你無意成為游戲程序員,也應該完成這個項目,因為它以寓教于樂的方式綜合應用了第一部分介紹的很多知識點。

第二個項目(第 15~17 章)介紹數據可視化。數據科學家的目標是通過各種可視化技術來理解海量信息。你將使用通過代碼生成的數據集、已經從網絡下載下來的數據集以及程序自動下載的數據集。完成這個項目后,你將能編寫出對大型數據集進行篩選的程序,并以可視化方式將各種數據呈現(xiàn)出來。

在第三個項目(第 18~20 章)中,你將創(chuàng)建一個名為“學習筆記”的小型 Web 應用程序。這個項目能夠讓用戶將學到的與特定主題相關的知識記錄下來。你將能夠分別記錄不同的主題,還可讓其他人建立賬戶并開始記錄自己的學習筆記。你還將學習如何部署這個項目,讓任何人都能夠通過網絡訪問它,而不管他身處何方。

掃碼觀看隨書配套視頻(由 B 站 UP 主 @林粒粒呀 錄制)。

要獲取以下補充材料,可訪問 ituring.cn/book/3038

·安裝說明:與書中的安裝說明相同,在遇到安裝問題時,可參閱這些材料。

·更新:與其他編程語言一樣,Python 也是在不斷發(fā)展變化的。我提供了詳盡的更新記錄,每當遇到問題時,你都可參閱它看看是否需要調整操作。

·練習答案:你應該花大量時間獨立完成“動手試一試”中的練習。如果卡殼了,無法獨立完成,可查看部分練習的答案。

·數據下載方法:在完成第 16 章中的項目和部分練習時,需要額外下載一些數據集。可參閱這些材料中的網址和步驟進行下載。

·速查表:英文版速查表可作為主要概念的參考指南,我們還提供了中文精簡版速查地圖,使用更方便快捷。

·PPT 課件:不論是自學還是老師教學,均可參考本書的配套 PPT 課件。

此外,還可以從這里下載源代碼文件、Python 學習路線圖,輔助你更好地學習。

繼續(xù)使用 Python,還是轉而使用其他語言——也許是編程領域里較新的語言?我每年都會考慮這個問題。可我依然專注于 Python,其中的原因很多。Python 是一種效率極高的語言:相比于眾多其他語言,使用 Python 編寫的程序包含的代碼行更少。Python 的語法也有助于創(chuàng)建整潔的代碼:相比于使用其他語言,使用 Python 編寫的代碼更容易閱讀、調試和擴展。

大家將 Python 用于眾多方面:編寫游戲、創(chuàng)建 Web 應用程序、解決商業(yè)問題以及開發(fā)內部工具。Python 還在科學領域被大量用于學術研究和應用研究。

我堅持使用 Python 的一個最重要的原因是,Python 社區(qū)有形形色色充滿激情的人。對程序員來說,社區(qū)非常重要,因為編程絕非孤獨的修行。大多數程序員需要向解決過類似問題的人尋求建議,經驗最為豐富的程序員也不例外。當需要他人幫助解決問題時,有一個聯(lián)系緊密、互幫互助的社區(qū)至關重要,而對于將 Python 作為第一門編程語言的人或從其他語言轉向 Python 的人來說,Python 社區(qū)無疑是堅強的后盾。

Python 是一門出色的語言,值得你去學習。現(xiàn)在就開始吧!

主站蜘蛛池模板: 天祝| 资中县| 霸州市| 绩溪县| 峨山| 罗田县| 河北区| 峡江县| 汝城县| 灵寿县| 天全县| 枣强县| 郓城县| 临高县| 新民市| 宁海县| 虞城县| 定边县| 辽阳市| 黄山市| 来宾市| 贵州省| 革吉县| 隆昌县| 公安县| 宜都市| 大余县| 宁国市| 普陀区| 柳河县| 闽侯县| 武强县| 定西市| 阿坝县| 阜南县| 承德县| 故城县| 彭阳县| 寿宁县| 临漳县| 曲水县|