-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
3/26 新書到! 3/19 新書到! 3/14 新書到! 12/12 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

Python高級編程

( 簡體 字)
作者:[美] Luke Sneeringer 著 類別:1. -> 程式設計 -> Python
譯者:宋沄劍 劉磊 譯
出版社:清華大學出版社Python高級編程 3dWoo書號: 45558
詢問書籍請說出此書號!

缺書
NT售價: 250

出版日:11/1/2016
頁數:249
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787302452850
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:


最近,Python已經成為越來越多開發人員的首選語言。Python的使用者遍布全球,他們將該語言用于各種目的。隨著Python的廣泛應用,越來越多的開發人員都在花時間編寫Python。
Python穩定增長的原因在于它是一門強大的語言,但很多經驗豐富的Python開發人員也僅僅了解該語言所能完成工作的冰山一角。
本書讀者對象
本書的目標讀者是那些已經使用Python工作并熟悉它,而且希望進一步學習的開發人員。本書假定讀者已經完成過Python開發過程中的大多數基本任務(例如使用過Python交互式終端)。
如果你是希望尋求由中級到高級的Python語言功能的讀者,就應該從頭至尾閱讀本書。
你也可能曾經使用過更高級的語言功能,或可能需要維護使用這些功能的代碼,那么可以考慮將本書作為參考手冊;或者處理具體實現代碼時可以將本書作為索引,從而充實對高級功能的理解。
本書內容
本書涵蓋所有最新版本的Python(包括Python 2與Python 3)。在編寫本書時,最新的可用版本是Python 3.4,Python 3.5還是beta版。本書主要涵蓋了Python 2.6/2.7/3.3/3.4。本書提供的大多數代碼既能在Python 2上運行,也能在Python 3上運行,Python 2代碼會特別標注出來。
此外,本書還占用一整章的篇幅深入講解Python 2與Python 3的區別,其中提供了編寫跨版本運行代碼的建議,以及如何將代碼移植到Python 3。
本書主要集中在兩個領域。第一個領域是語言功能本身。例如,本書用幾章闡述關于Python類與對象模型工作機制的多個方面。第二個領域是作為標準庫的一部分提供的模塊。例如,本書用3章闡述了3個模塊:asyncio、unittest與argparse。
本書結構
本書可以分為4個部分:
本書的前3章介紹Python中的函數。前兩章分別闡述裝飾器與上下文管理器,它們是用于修改或為增加功能封裝函數的可重用方式。第3章則是關于生成器的內容,生成器是一種設計函數的方法,它可以使函數一次返回一個值,而不是提前創建一整列值并將其一次性返回。
第Ⅱ部分包含第4∼7章,介紹Python類與語言對象模型。第4章闡述魔術方法,第5章和第6章分別闡述元類和類工廠,這是以強大方式構建類的兩種方式。最后,第7章闡述抽象基類,解釋abc模塊,以及如何讓類來聲明實現的模式。
第Ⅲ部分包含第8章和第9章,介紹字符串與數據。第8章闡述如何在Python中使用Unicode字符串(與使用字節字符串相比較),詳細介紹了在Python 2與Python 3中字符串的區別。第9章則闡述正則表達式,包含了Python的re模塊,以及如何編寫正則表達式。
最后,第Ⅳ部分包含無法融入前三部分的所有內容。第10章深入介紹Python 2與Python 3的區別,以及如何編寫能夠兼容這兩個平臺的代碼。第11章介紹單元測試,主要關注unittest模塊。關于命令行界面(CLI)工具的第12章介紹有關optparse與argparse的內容,這兩個Python模塊用于編寫命令行工具。第13章介紹asyncio,它是一個新的異步編程庫,在Python 3.4中被引入到Python標準庫。第14章介紹代碼風格。
使用本書的前提條件
首先,需要一臺運行Python的計算機。
雖然在大多數章節中沒有區別,但本書在方法上稍微有點以Linux為中心(在第12章區別最大)。本書的示例在Linux環境中運行,如果在Windows環境中運行,輸出結果可能會有略微不同。
勘誤表
盡管我們已經盡了各種努力來保證書中或代碼中不出現錯誤,但是人無完人,錯誤在所難免。如果發現本書中的錯誤,如拼寫錯誤或代碼錯誤,請告訴我們,我們將不勝感激。通過發送勘誤表,可以讓其他讀者避免幾個小時的困惑,同時可以幫助我們提供更高質量的信息。
要在網站上找到本書的勘誤表,請訪問http://www.wrox.com網頁,點擊勘誤表鏈接。在這個網頁上,您能看到本書提供的和Wrox編輯發布的所有勘誤表。
如果在本書勘誤頁面上找不到提供的勘誤表,請訪問www.wrox.com/contact/ techsupport.shtml網頁,填寫那個網頁上的表格并且發給我們您發現的錯誤。我們將核對反饋信息,如果正確,我們將在本書的勘誤表頁面張貼該錯誤消息,并在本書后續版本中修正這一問題。
P2P.wrox.com
要與作者和同行討論,請加入p2p.wrox.com網站上的P2P論壇。這個論壇是一個基于Web的系統,可以張貼與Wrox圖書相關的消息和相關技術,與其他讀者和技術用戶交流心得。該論壇提供電子郵件訂閱功能,當論壇上有新貼發布時,可以給你傳送你選擇的感興趣的論題。Wrox作者、編輯和其他業界專家和讀者都會到這個論壇上來探討問題。
在http://p2p.wrox.com上,你將發現許多不同的論壇,它們不僅有助于你閱讀本書,而且還有助于你開發自己的應用程序。要加入論壇,可以遵循下面的步驟:
(1) 進入p2p.wrox.com,單擊Register鏈接。
(2) 閱讀使用協議,并單擊Agree按鈕。
(3) 填寫加入該論壇所需要的信息和自己希望提供的其他可選信息,單擊Submit按鈕。
(4) 你會收到一封電子郵件,其中的信息描述了如何驗證賬戶,完成加入過程。





加入論壇后,可以發布新消息和回復其他用戶發布的信息。可以隨時閱讀這個網站上的信息。如果想收到特定論壇發來的新消息,單擊論壇列表中該論壇名旁邊的Subscribe to this Forum圖標。
要想更多了解如何使用Wrox P2P的信息,一定要閱讀FAQ,了解有關論壇軟件的工作情況,以及P2P和Wrox圖書的許多常見問題的解答。要閱讀FAQ,只需要在任意P2P頁面上單擊FAQ鏈接即可。

內容簡介:

學習編寫更出色的代碼,讓工作流程更加平滑
 Python是一門強大且快速增長的動態編程語言。雖然它提供了很多用于編寫高級、簡潔、可維護代碼的工具,但是對于這些技術卻一直沒有一個清晰的解釋。《Python高級編程》為介紹所有Python功能提供了一個入口。每個概念的完整闡述、關于應用程序的討論、動手指南都將教會你設計更好的架構,以及編寫使得應用程序更加健壯與高效的代碼。
如果你已經熟悉Python,并期望使用它提供的所有功能,那本書正是為你準備的。
主要內容
◆ 涵蓋所有語言的功能,包括函數、如何應用裝飾器、上下文管理器與生成器
◆ 介紹Python的類與對象模型、元類、類工廠以及抽象基類
◆ 驗證如何操縱Unicode字符串,以及Python2與Python3字
符串的區別
◆ 提供Python2與Python3差異的深入講解,并闡述如何編寫跨版本的代碼
◆ 探討單元測試、命令行界面工具以及新的異步編程庫
目錄:

第Ⅰ部分函數

第1章 裝飾器3

1.1理解裝飾器3

1.2裝飾器語法4

1.3在何處使用裝飾器6

1.4編寫裝飾器的理由6

1.5編寫裝飾器的時機7

1.5.1附加功能7

1.5.2數據的清理或添加7

1.5.3函數注冊7

1.6編寫裝飾器7

1.6.1初始示例:函數注冊表8

1.6.2執行時封裝代碼9

1.6.3裝飾器參數16

1.7裝飾類20

1.8類型轉換23

1.9小結25

第2章 上下文管理器27

2.1上下文管理器的定義27

2.2上下文管理器的語法28

2.2.1with語句28

2.2.2enter和exit方法28

2.2.3異常處理29

2.3何時應該編寫上下文管理器30

2.3.1資源清理30

2.3.2避免重復31

2.4更簡單的語法38

2.5小結39

第3章 生成器41

3.1理解生成器41

3.2理解生成器語法41

3.2.1next函數43

3.2.2StopIteration異常45

3.3生成器之間的交互47

3.4迭代對象與迭代器49

3.5標準庫中的生成器50

3.5.1range50

3.5.2dict.items及其家族50

3.5.3zip51

3.5.4map52

3.5.5文件對象52

3.6何時編寫生成器53

3.6.1分塊訪問數據53

3.6.2分塊計算數據54

3.7何時使用生成器單例模式54

3.8生成器內部的生成器55

3.9 小結56

第Ⅱ部分類

第4章 魔術方法59

4.1魔術方法語法59

4.2可用的魔術方法60

4.2.1創建與銷毀61

4.2.2類型轉換63

4.2.3比較65

4.3其他魔術方法75

4.4小結76

第5章 元類77

5.1類與對象77

5.1.1直接使用type78

5.1.2type鏈80

5.1.3type的角色80

5.2編寫元類81

5.2.1__new__方法81

5.2.2__new__與__init__方法81

5.2.3元類示例82

5.2.4元類繼承82

5.3使用元類84

5.3.1Python385

5.3.2Python285

5.3.3需要跨版本執行的代碼怎么辦85

5.3.4跨版本兼容性在何時重要86

5.4何時使用元類87

5.4.1說明性類聲明87

5.4.2類驗證88

5.4.3非繼承屬性90

5.5顯式選擇的問題91

5.6meta-coding92

5.7小結94

第6章 類工廠95

6.1類型回顧95

6.2理解類工廠函數96

6.3決定何時應該編寫類工廠98

6.3.1運行時屬性98

6.3.2避免類屬性一致性問題102

6.3.3關于單例模式問題的解答105

6.4小結107

第7章 抽象基類109

7.1使用抽象基類109

7.2聲明虛擬子類110

7.2.1聲明虛擬子類的原因111

7.2.2使用register作為裝飾器113

7.2.3__subclasshook__113

7.3聲明協議115

7.3.1其他現有的方法115

7.3.2抽象基類的價值118

7.3.3抽象屬性120

7.3.4抽象類或靜態方法121

7.4內置抽象基類122

7.4.1只包含一個方法的抽象基類122

7.4.2可供集合使用的抽象基類123

7.4.3額外的抽象基類124

7.5小結124

第Ⅲ部分數據

第8章 字符串與Unicode127

8.1文本字符串與字節字符串127

8.2包含非ASCII字符的字符串132

8.2.1觀察區別132

8.2.2Unicode是ASCII的超集133

8.3其他編碼133

8.4讀取文件135

8.4.1Python3135

8.4.2Python2137

8.4.3讀取其他源137

8.4.4指定Python文件編碼137

8.5嚴格編碼139

8.5.1不觸發錯誤139

8.5.2注冊錯誤處理程序140

8.6小結141

第9章 正則表達式143

9.1使用正則表達式的原因143

9.2Python中的正則表達式144

9.2.1原始字符串144

9.2.2match對象145

9.2.3找到多個匹配145

9.3基本正則表達式146

9.3.1字符組146

9.3.2可選字符150

9.3.3重復151

9.4分組152

9.4.1零分組154

9.4.2命名分組155

9.4.3引用已經存在的分組156

9.5先行斷言157

9.6標記158

9.6.1不區分大小寫158

9.6.2ASCII與Unicode159

9.6.3點匹配換行符159

9.6.4多行模式159

9.6.5詳細模式160

9.6.6調試模式160

9.6.7使用多個標記160

9.6.8內聯標記160

9.7替換161

9.8已編譯的正則表達式162

9.9小結163

第Ⅳ部分其他高級主題

第10章 Python2與Python3167

10.1跨版本兼容性策略167

10.1.1__future__模塊168

10.1.22to3168

10.1.3限制170

10.1.4six170

10.2Python3中的變更171

10.2.1字符串與Unicode171

10.2.2Print函數171

10.2.3除法172

10.2.4絕對與相對導入173

10.2.5“老式風格”類的移除174

10.2.6元類語法175

10.2.7異常語法176

10.2.8字典方法178

10.2.9函數方法179

10.2.10迭代器179

10.3標準庫重定位180

10.3.1合并“高效”模塊180

10.3.2URL模塊181

10.3.3重命名181

10.3.4其他包重組181

10.4版本檢測182

10.5小結182

第11章 單元測試183

11.1測試的連續性183

11.1.1副本生態系統183

11.1.2隔離的環境184

11.1.3優點與缺點185

11.2測試代碼185

11.2.1代碼布局186

11.2.2測試函數186

11.2.3assert語句188

11.3單元測試框架188

11.3.1執行單元測試189

11.3.2載入測試192

11.4模擬193

11.4.1模擬函數調用193

11.4.2斷言被模擬的調用195

11.4.3檢查模擬197

11.4.4檢查調用199

11.5其他測試工具199

11.6小結201

第12章 CLI工具203

12.1optparse203

12.1.1一個簡單的參數203

12.1.2選項205

12.1.3使用optparse的原因212

12.2argparse213

12.2.1本質213

12.2.2參數與選項214

12.2.3使用argparse的理由220

12.3小結221

第13章 asyncio模塊223

13.1事件循環223

13.2協程227

13.3Future對象與Task對象229

13.3.1Future對象229

13.3.2Task對象230

13.4回調231

13.4.1不保證成功232

13.4.2幕后232

13.4.3帶參數的回調233

13.5任務聚合233

13.5.1聚集任務234

13.5.2等待任務235

13.6隊列238

13.7服務器240

13.8小結242

第14章 代碼風格243

14.1原則243

14.1.1假定你的代碼需要維護243

14.1.2保持一致性244

14.1.3考慮對象在程序中的存在方式,

尤其是那些帶有數據的

對象244

14.1.4不要做重復工作244

14.1.5讓注釋講故事245

14.1.6奧卡姆剃刀原則245

14.2標準245

14.2.1簡潔的規則246

14.2.2文檔字符串246

14.2.3空行246

14.2.4導入247

14.2.5變量247

14.2.6注釋248

14.2.7行長度248

14.3小結249

序: