資料介紹
如果你是本書的目標讀者,那你應該可以從本書的任意一章開始閱讀,但是如果按照我寫作時的構思來的話,本書一共分為六個獨立的部分,每個部分內的章節最好按照順序來讀。在介紹讓你自己實現某些功能的方法之前,我通常會先把現成可用的工具講清楚。比如說第二部分的第 2 章覆蓋了序列類型(sequence type),但是像 collections.deque 這種類可能就會一帶而過。一直到第四部分,我們才會看看如何從抽象基類(abstract base class, ABC)中獲利,抽象基類則被封裝在 collections.abc 這個包里。如果想創建自己的 ABC,你可能得看到第四部分的最后一些內容才行,因為我一直覺得,如果沒有熟練使用 ABC 的經驗,貿然去實現一套自己的東西是不合適的。這樣做有幾個好處。第一,知道有什么現成的工具可用,能避免重新發明輪子。畢竟我們使用現有集合類型(collection type)的概率要遠大于自己動手寫一套新的。第二,這樣一來,在討論如何寫新類型之前,我們能夠有更多的機會來了解這些現成類的高級用法。第三,比起從零開始構建一個 ABC,繼承已有的 ABC 庫應該會簡單一些。最后,我認為在看過一些實際的案例之后,理解抽象會更輕松。當然,這樣也會帶來一些不便之處,比如書里的向前引用就會分散在各個不同的章節里面。但是經過上述這番梳理,我想這一點不便之處也是可以容忍的。下面是本書每一部分的主題。
一部分第一部分只有單獨的一章,講解的是 Python 的數據模型(data model),以及如何為了保證行為一致性而使用特殊方法(比如 __repr__),畢竟 Python 的一致性是出了名的。其實整本書幾乎都是在講解 Python 的數據模型,第 1 章算是一個概覽。第二部分第二部分包含了各種集合類型:序列(sequence)、映射(mapping)和集合(set),另外還提及了字符串(str)和字節序列(bytes)的區分。說起來,最后這一點也是讓親者(Python 3 用戶)快,仇者(Python 2 用戶)痛的一個關鍵,因為這個區分致使 Python 2 代碼遷移到 Python 3 的難度陡增。第二部分的目標是幫助讀者回憶起 Python 內置的類庫,順帶解釋這些類庫的一些不太直觀的地方。具體的例子有 Python 3 如何在我們觀察不到的地方對 dict 的鍵重新排序,或者是排序有區域(locale)依賴的字符串時的注意事項。為了達到本部分的目標,有些地方的講解會比較大而全,像序列類型和映射類型的變種就是這樣;有時則會寫得很深入,比方說我會對 dict 和 set 底層的散列表進行深層次的討論。第三部分如何把函數作為一等對象(first-order object)來使用。第三部分首先會解釋前面這句話是什么意思,然后話題延伸到這個概念對那些被廣泛使用的設計模型的影響,最后讀者會看到如何利用閉包(closure)的概念來實現函數裝飾器(function decorator)。這一部分的話題還包括 Python 的這些基本概念:可調用(callable)、函數屬性(function attribute)、內省(introspection)、參數注解(parameter annotation)和 Python 3 里新出現的 nonlocal 聲明。第四部分到了這里,書的重點轉移到了類的構建上面。雖然在第二部分里的例子里就有類聲明(class declaration)的出現,但是第四部分會呈現更多的類。和任何面向對象語言一樣,Python 還有些自己的特性,這些特性可能并不會出現在你我學習基于類的編程的語言中。這一部分的章節解釋了引用(reference)的原理、“可變性”的概念、實例的生命周期、如何構建自定義的集合類型和 ABC、多重繼承該怎么理順、什么時候應該使用操作符重載及其方法。第五部分 Python 中有些結構和庫不再滿足于諸如條件判斷、循環和子程序(subroutine)之類的順序控制流程,第五部分的筆墨會集中在這些構造和庫上。我們會從生成器(generator)起步,然后話題會轉移到上下文管理器(context manager)和協程(coroutine),其中會涵蓋新增的功能強大但又不容易理解的 yield from 語法。這一部分以并發性和面向事件的 I/O 來結尾,其中跟并發性相關的是 collections.futures 這個很新的包,它借助 futures 包把線程和進程的概念給封裝了起來;而跟面向事件 I/O 相關的則是 asyncio,它的背后是基于協程和 yield from 的 futures 包。第六部分第六部分的開頭會講到如何動態創建帶屬性的類,用以處理諸如 JSON 這類半結構化的數據。然后會從大家已經熟悉的特性(property)機制入手,用描述符從底層來解釋 Python 對象屬性的存取。同時,函數、方法和描述符的關系也會被梳理一遍。第六部分會從頭至尾地實現一個字段驗證器,在這個過程中我們會遇到一些微妙的問題,然后在最后一章中就自然引出像類裝飾器(class decorator)和元類(metaclass)這些高級的概念。
- 圖解數字磁帶錄音機的PDF電子書免費下載 109次下載
- 現代無線電實驗的PDF電子書免費下載 285次下載
- 半導體收音機淺談的PDF電子書免費下載 171次下載
- 深度學習入門:基于Python的理論與實現電子書 32次下載
- 光學諧振腔的圖解分析與設計方法的PDF電子書免費下載 132次下載
- micropython中文教程第二版電子書免費下載 0次下載
- MATLAB函數速查手冊PDF電子書免費下載 150次下載
- 電子管數據手冊合集PDF電子書免費下載 82次下載
- 寫給文科生看的編程入門Python管窺PDF電子書免費下載 7次下載
- python入門教材電子書合集免費下載 31次下載
- python標準庫詳細電子書資料免費下載 2次下載
- 電冰箱快速維修PDF電子書免費下載 51次下載
- 家電維修1128例PDF電子書免費下載 207次下載
- 《Radio-Frequency Integrated-Circuit Engineering》電子書籍.pdf下載 0次下載
- 實用Linux教程電子書 0次下載
- 電子書閱讀器內置鋰電池供電自動切換電路 2030次閱讀
- 如何安裝Python解釋器 5408次閱讀
- Python的下載與安裝 1398次閱讀
- Python-pygame 游戲開發 1517次閱讀
- 如何使用Python直接給微信推送消息 2105次閱讀
- 用Python寫了一個電子考勤系統 1253次閱讀
- 手機熱點可以替代寬帶長期使用嗎? 4396次閱讀
- 機器學習入門寶典《統計學習方法》的介紹 4682次閱讀
- 機器學習和數據科學必讀的10本免費在線電子書和書的詳細介紹 6745次閱讀
- python適合做什么開發_python未來發展怎么樣 8305次閱讀
- 介紹Python 3 的功能 讓人輕松地從Python 2遷移到Python 3 4527次閱讀
- 最新電子書拆解評測系列報道(一):打開你的眼界 1.2w次閱讀
- 簡要介紹一下Python-UNO的使用方法 8661次閱讀
- 本地搭建Python Web的開發測試環境過程詳解 4907次閱讀
- python2與python3問題的分析 1063次閱讀
下載排行
本周
- 1電子電路原理第七版PDF電子教材免費下載
- 0.00 MB | 1491次下載 | 免費
- 2單片機典型實例介紹
- 18.19 MB | 95次下載 | 1 積分
- 3S7-200PLC編程實例詳細資料
- 1.17 MB | 27次下載 | 1 積分
- 4筆記本電腦主板的元件識別和講解說明
- 4.28 MB | 18次下載 | 4 積分
- 5開關電源原理及各功能電路詳解
- 0.38 MB | 11次下載 | 免費
- 6100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 7基于單片機和 SG3525的程控開關電源設計
- 0.23 MB | 4次下載 | 免費
- 8基于AT89C2051/4051單片機編程器的實驗
- 0.11 MB | 4次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 2PADS 9.0 2009最新版 -下載
- 0.00 MB | 66304次下載 | 免費
- 3protel99下載protel99軟件下載(中文版)
- 0.00 MB | 51209次下載 | 免費
- 4LabView 8.0 專業版下載 (3CD完整版)
- 0.00 MB | 51043次下載 | 免費
- 5555集成電路應用800例(新編版)
- 0.00 MB | 33562次下載 | 免費
- 6接口電路圖大全
- 未知 | 30320次下載 | 免費
- 7Multisim 10下載Multisim 10 中文版
- 0.00 MB | 28588次下載 | 免費
- 8開關電源設計實例指南
- 未知 | 21539次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935053次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537793次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191183次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183277次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138039次下載 | 免費
評論