- Python編程:從入門到實踐(第3版)
- (美)埃里克·馬瑟斯
- 2455字
- 2025-05-26 17:39:26
前言

如何學習編寫第一個程序,每個程序員都有不同的故事。我在還是個孩子時就開始學習編程了,當時我父親在計算時代的先鋒之一——數字設備公司(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 學習路線圖,輔助你更好地學習。
為何使用 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)在就開始吧!
- C++程序設計教程
- 編程的修煉
- Mastering matplotlib
- Python王者歸來
- Apex Design Patterns
- Unreal Engine 4 Shaders and Effects Cookbook
- Python之光:Python編程入門與實戰(zhàn)
- Learning PHP 7
- Mastering C++ Multithreading
- Fast Data Processing with Spark(Second Edition)
- Django 5企業(yè)級Web應用開發(fā)實戰(zhàn)(視頻教學版)
- 零基礎學C語言(第4版)
- 超簡單:Photoshop+JavaScript+Python智能修圖與圖像自動化處理
- Mastering Apache Camel
- Python計算機視覺與深度學習實戰(zhàn)