書名: Python 快速入門(第3版)作者名: (美)娜奧米·塞德本章字數: 2574字更新時間: 2020-01-16 10:56:37
關于本書
本書適用于已用過一種以上的編程語言并需要盡快掌握Python 3基礎知識的讀者。本書雖然也講到了一些編程的基本概念,但并未對編程的基礎技能進行講授,并且假定讀者已經掌握流程控制、OOP(面向對象編程)、文件訪問、異常處理之類的基本概念。本書也可作為Python 3的簡明參考書,供Python早期版本的用戶使用。
本書的用法
第一部分簡單介紹了Python,解釋了在本機系統中下載、安裝Python的方法,并對語言進行了概述。這十分有助于經驗豐富的程序員站在較高的層面了解Python。
第二部分是本書的核心內容,涵蓋了使用Python時必須掌握的知識點,這里將Python視為一門通用的編程語言。在章節設計時,考慮了讓Python的初學者能夠循序漸進地學習,掌握這門語言的關鍵知識點。在這幾章中還包含了一部分比較高級的內容,大家可以回過頭去復習一下有關概念或主題的所有必要信息。
第三部分介紹了Python語言的高級特性。這些特性并非一定用得到,但對專業Python程序員確實非常有幫助。
第四部分講述了一些比較高級或專業的主題,已不僅僅是編程語言的語法介紹。大家可根據自身需要選擇性閱讀這部分章節。
如果你是Python的新手,建議從第3章開始閱讀,以便對Python有一個整體的了解,然后再繼續閱讀第二部分的各章。在遇到交互式代碼示例時,請在計算機上錄入一下,以便迅速加深對相關概念的理解。除文中的示例之外,讀者還可以進一步獲得不清楚的習題的解答。這對加快學習速度、提高理解程度都會有所幫助。如果對OOP不熟悉或用不上,那么第15章的大部分內容都可以跳過。
即便是對Python比較熟悉的讀者,也請從第3章開始閱讀。這里對Python 3和其他版本的區別進行了很好的回顧和介紹。這也算是一次合理的測驗,看看讀者是否準備好開始學習第三和第四部分的進階內容了。
有些讀者雖然是Python新手,但可能對其他編程語言擁有足夠豐富的經驗。因此,這些讀者只要讀過第3章,大致瀏覽一下第19章列出的Python標準庫模塊清單,再看看Python官方文檔中的《Python庫參考手冊》,就有可能弄明白大部分需要了解的內容。
各章主要內容
第1章討論Python的優缺點,展示為什么Python 3是一種不錯的選擇,是適用于很多場合的編程語言。
第2章介紹Python解釋器和IDLE的下載、安裝和啟動過程。IDLE是Python自帶的集成開發環境。
第3章是對Python語言的簡要概述,對其設計理念、語法、語義和功能給出了基本的概念。
第4章開始介紹Python的基礎知識,包括變量、表達式、字符串、數值等,還介紹了Python代碼塊的語法。
第5、6和7章介紹Python的5種強大的內置數據類型,即列表、元組、集合、字符串和字典。
第8章介紹Python流程控制的語法和用法(循環和if-else語句)。
第9章介紹Python函數的定義,及其靈活的參數傳遞能力。
第10章介紹Python的模塊,這種機制可以方便地將程序的命名空間進行分段。
第11章介紹如何創建可獨立運行的Python程序(腳本),并在Windows、macOS和Linux下運行。這一章還會介紹對命令行選項、參數和I/O重定向的支持。
第12章介紹如何處理并遍歷文件系統中的文件和目錄,還演示了如何編寫盡可能獨立于當前操作系統的代碼。
第13章介紹Python中的文件讀寫機制,包括基本的字符串(或字節流)讀寫能力、可用于讀取二進制記錄的機制以及任意Python對象的讀寫能力。
第14章討論異常(Python錯誤處理機制)的用法,這里假定讀者對異常一無所知。當然,如果讀者已經在C++或Java中用到過異常,就會發現它們比較類似。
第15章介紹Python對面向對象程序的支持。
第16章討論Python可用的正則表達式功能。
第17章介紹較高級的OOP技術,包括Python類的特殊方法(屬性)、元類和抽象基類。
第18章介紹Python包的概念,可用于組織大型項目的代碼。
第19章是對標準庫的簡要介紹,還會對其他模塊的獲取途徑、安裝方法進行討論。
第20章深入探討Python中的文件操作。
第21章介紹對各種類型的數據文件進行讀取、清洗和寫入的方法。
第22章演示獲取網絡數據的過程、常見問題和工具。
第23章討論Python訪問關系數據庫和NoSQL數據庫的方式。
第24章簡要介紹利用Python、Jupyter記事本和pandas對數據集進行探索的過程。
第25章案例研究部分將演示用Python進行數據獲取、清洗并作圖的過程。該項目綜合了前幾章提到的一些Python特性,讀者將有機會看到一個項目從頭至尾的完整開發過程。
附錄A介紹Python文檔的獲取或訪問方式,包括完整的官方文檔、Python式風格指南、PEP 8和Python之禪。Python之禪(The Zen of Python)稍顯牽強地總結了Python背后的設計哲學。
習題答案給出了大部分習題的答案(讀者可以按“資源與支持”中的說明自行下載)。不過有些習題是要求讀者親自動手的,書中就沒有給出答案了。
代碼約定
本書給出的示例代碼及其輸出結果,都是以等寬字體顯示的,一般都帶有注解。因為不是為直接在讀者的代碼中復用而準備的,所以對這些代碼特意做了最大程度的簡化。簡化了代碼,讀者就能專注于正在介紹的主題。
為了保持代碼簡單,這些示例盡量以交互式shell會話的方式給出,請盡可能動手輸入并體驗一下這些代碼。在交互式代碼示例中,需要鍵入的命令都是以>>>提示符開始的,代碼的運行結果(如果有的話)則在接下來的行中顯示。
有時候需要用到較長的代碼示例,這些示例在書中會標識為文件清單。讀者應該把這些清單保存為文件,文件名應該與書中用到的文件名一致,然后就可以作為單獨腳本運行了。
習題
從第4章開始,本書將給出3種類型的習題。速測題是一些很簡單的問題,建議讀者花一些時間確認一下是否已掌握了相關的內容。動手題則要求更高一些,建議讀者動手寫一些Python代碼。在很多章節的末尾還會有研究題,讓讀者有機會將這一章和前幾章的概念結合起來,完成一段完整的腳本。
習題解答
大部分習題都會在習題答案中給出答案,在本書所附源代碼中也會有一個單獨的目錄存放答案。請記住,這些答案并非就是針對這些編碼問題的唯一答案,還可能會有其他的答案。讀者如果要判斷自己的答案是否合理,最好的方式就是先去理解書中給出的答案,然后再來確定自己的答案是否達到了同樣的目的。
系統需求
本書的示例代碼在編寫時已經考慮了Window(s Windows 7到Windows 10)、macOS和Linux系統。因為Python是一種跨平臺的編程語言,除一些與平臺緊密相關的內容(如文件處理、路徑、圖形用戶界面等)之外,這些示例代碼多數應該能在其他平臺上運行。
軟件需求
本書基于Python 3.6編寫,所有的示例代碼應該都能在Python 3的后續版本中正常運行。大部分代碼已經在Python 3.7預發布版中測試通過了。除少數內容之外,這些示例代碼也可以在Python 3.5中正常運行,但還是強烈建議使用3.6版本。使用低版本沒有任何好處,3.6版本的Python有多處細微的改進。注意,本書的代碼必須使用Python 3,版本過低就無法正常運行了。