Python高級編程[人民郵電出版社出版的圖書]

Python高級編程[人民郵電出版社出版的圖書]
Python高級編程[人民郵電出版社出版的圖書]
更多義項 ▼ 收起列表 ▲

《Python高級編程》是2010年人民郵電出版社出版的圖書,作者是(法國)萊德 夏海輪。

基本信息

內容簡介

《Python高級編程》針對具備一定Python基礎並希望通過在項目中套用最佳實踐和新的開發技術來提升自己的Python開發人員。

作者簡介

萊德,是巴黎Ingeniweb公司的CTO,其工作方向為Python、Zope、Plone技術和質量保證。他參與Zope社區已經有5年了,並且曾經為Zope自身貢獻過代碼。

萊德創建了Afpy,這是法國的Python用戶組,並且編寫了兩本法語的Python書籍。他還在諸如Solutions Linux、Pycon、OSCON和EuroPython等法國及國際會議上發表了許多演講,並且主持了許多課程。

作品目錄

第 1章 準備工作 1

1.1 安裝Python 1

1.1.1 Python實現版本 2

1.1.2 在Linux環境下安裝 3

1.1.3 在Windows環境下安裝 5

1.1.4 在Mac OS X環境下安裝 8

1.2 Python命令行 9

1.2.1 定製互動式命令行 10

1.2.2 iPython:增強型命令行 11

1.3 安裝setuptools 12

1.3.1 工作原理 12

1.3.2 使用EasyInstall安裝setuptools 13

1.3.3 將MinGW整合到distutils中 15

1.4 工作環境 15

1.4.1 使用文本編輯器與輔助工具的組合 15

1.4.2 使用集成開發環境 19

1.5 小結 22

第 2章 語法**佳實踐——低於類級 23

2.1 列表推導 24

2.2 疊代器和生成器 25

2.2.1 生成器 27

2.2.2 協同程式 31

2.2.3 生成器表達式 33

2.2.4 itertools模組 34

2.3 裝飾器 37

2.3.1 如何編寫裝飾器 39

2.3.2 參數檢查 40

2.3.3 快取 42

2.3.4 代理 45

2.3.5 上下文提供者 46

2.4 with和contextlib 47

2.4.1 contextlib模組 49

2.4.2 上下文實例 50

2.5 小結 52

第3章 語法**佳實踐——類級 53

3.1 子類化內建類型 53

3.2 訪問超類中的方法 55

3.2.1 理解Python的方法解析順序 56

3.2.2 super的缺陷 60

3.3 **佳實踐 63

3.4 描述符和屬性 64

3.4.1 描述符 65

3.4.2 屬性 71

3.5 槽 74

3.6 元編程 75

3.6.1 __new__方法 75

3.6.2 __metaclass__方法 77

3.7 小結 80

第4章 選擇好的名稱 81

4.1 PEP 8和命名**佳實踐 81

4.2 命名風格 82

4.2.1 變數 82

4.2.2 函式和方法 86

4.2.3 屬性 88

4.2.4 類 89

4.2.5 模組和包 89

4.3 命名指南 90

4.3.1 使用“has”或“is”前綴命名布爾元素 90

4.3.2 用複數形式命名序列元素 90

4.3.3 用顯式的名稱命名字典 90

4.3.4 避免通用名稱 91

4.3.5 避免現有名稱 91

4.4 參數**佳實踐 92

4.4.1 根據疊代設計構建參數 92

4.4.2 信任參數和測試 93

4.4.3 小心使用*args和**kw魔法參數 94

4.5 類名 96

4.6 模組和包名稱 96

4.7 使用API 97

4.7.1 跟蹤冗長 97

4.7.2 構建命名空間樹 98

4.7.3 分解代碼 100

4.7.4 使用Egg 101

4.7.5 使用deprecation過程 101

4.8 有用的工具 102

4.8.1 Pylint 103

4.8.2 CloneDigger 104

4.9 小結 105

第5章 編寫一個包 106

5.1 用於所有包的公共模式 106

5.2 基於模板的方法 118

5.2.1 Python Paste 118

5.2.2 創建模板 120

5.3 創建包模板 120

5.4 開發周期 125

5.5 小結 128

第6章 編寫一個應用程式 129

6.1 Atomisator概述 129

6.2 整體描述 130

6.3 工作環境 131

6.3.1 添加一個測試運行程式 133

6.3.2 添加一個包結構 133

6.4 編寫各個包 134

6.4.1 atomisator.parser 134

6.4.2 atomisator.db 139

6.4.3 atomisator.feed 143

6.4.4 atomisator.main 145

6.5 分發Atomisator 147

6.6 包之間的依賴性 148

6.7 小結 149

第7章 使用zc.buildout 150

7.1 zc.buildout原理 151

7.1.1 配置檔案結構 151

7.1.2 buildout命令 152

7.1.3 recipe 154

7.1.4 Atomisator buildout環境 157

7.1.5 更進一步 158

7.2 發行與分發 159

7.2.1 發行包 160

7.2.2 添加一個發行配置檔案 160

7.2.3 構建和發行應用程式 161

7.3 小結 162

第8章 代碼管理 163

8.1 版本控制系統 163

8.1.1 集中式系統 163

8.1.2 分散式系統 165

8.1.3 集中還是分布 167

8.1.4 Mercurial 167

8.1.5 使用Mercurial進行項目管理 171

8.2 持續集成 178

8.3 小結 183

第9章 生命周期管理 184

9.1 不同的方法 184

9.1.1 瀑布開發模型 184

9.1.2 螺旋開發模型 185

9.1.3 疊代開發模型 185

9.2 定義生命周期 187

9.2.1 計畫 188

9.2.2 開發 188

9.2.3 整體調試 188

9.2.4 發行 188

9.3 建立一個跟蹤系統 189

9.3.1 Trac 189

9.3.2 使用Trac管理項目生命周期 194

9.4 小結 196

第 10章 編寫項目文檔 197

10.1 技術性寫作的7條規則 197

10.1.1 分兩步編寫 198

10.1.2 以讀者為目標 199

10.1.3 使用簡單的風格 199

10.1.4 限制信息的範圍 200

10.1.5 使用真實的代碼示例 200

10.1.6 保持簡單,夠用即可 201

10.1.7 使用模板 202

10.2 reStructuredText入門 202

10.2.1 小節結構 204

10.2.2 列表 205

10.2.3 內聯標籤 205

10.2.4 文字塊 206

10.2.5 連結 206

10.3 構建文檔 207

10.4 建立自己的工件集 214

10.5 小結 220

第 11章 測試驅動開發 221

11.1 我不測試 221

11.1.1 測試驅動開發原理 221

11.1.2 哪一類測試 225

11.1 我不測試 221

11.1.1 測試驅動開發原理 221

11.1.2 哪一類測試 225

11.2 我測試 229

11.2.1 Unittest的缺陷 229

11.2.2 Unittest替代品 230

11.2.3 仿真和模擬 236

11.2.4 文檔驅動開發 240

第12章 最佳化:通用原則和剖析技術 243

第13章 最佳化:解決方案 264

第14章 有用的設計模式 290

相關詞條

熱門詞條

聯絡我們