第1章 緒論1
11 簡介1
12 開放源碼軟件的革命1
13 Python 的歷史2
14 Python 模塊3
15 Python 和本書的一般注意事項3
16 本書導讀3
17 因特網和萬維網資源8
第2章 Python 編程概述9
21 簡介9
22 第一個Python 程序:打印一行文本9
23 修改第一個Python 程序11
24 另一個Python 程序:整數求和12
25 內存概念14
26 算術運算15
27 字符串格式化19
28 做出決策:相等運算符和關系運算符21
29 縮進24
210 對象思想:對象技術簡介25
第3章 控制結構27
31 概述27
32 算法27
33 偽代碼27
34 控制結構28
35 if 選擇結構29
36 if/else 和if/elif/else 選擇結構30
37 while 重復結構34
38 算法陳述:案例分析1(由計數器控制的重復)35
39 算法陳述, 自上而下求精法:案例分析2(由哨兵值控制的重復)37
310 算法陳述, 自上而下求精法:案例分析3(嵌套控制結構)40
311 增量賦值符號43
312 由計數器控制的重復的本質44
313 for 重復結構45
314 使用for 重復結構47
315 break 和continue 語句49
316 邏輯運算符50
317 結構化編程總結53
第4章 函數57
41 概述57
42 Python 中的程序組件57
viii Python 編程金典
43 函數58
44 math 模塊的函數58
45 函數定義60
46 隨機數生成62
47 示例:博彩游戲63
48 作用域規(guī)則65
49 關鍵字import 和命名空間68
410 遞歸70
411 遞歸示例:斐波拉契序列72
412 遞歸與重復74
413 默認參數74
414 關鍵字參數75
第5章 列表. 元組和字典77
51 概述77
52 序列77
53 創(chuàng)建序列79
54 使用列表和元組80
55 字典86
56 列表和字典方法88
57 引用和引用參數92
58 將列表傳給函數92
59 列表排序和搜索94
510 多下標序列95
第6章 公共網關接口(CGI)入門99
61 概述99
62 客戶和Web 服務器交互99
63 簡單的CGI 腳本103
64 向CGI 腳本發(fā)送輸入108
65 用XHTML表單發(fā)送輸入并用cgi 模塊獲取表單數據110
66 用cgiFieldStorage 讀取輸入113
67 其他HTTP 標頭114
68 示例:交互式門戶網站114
69 因特網和萬維網資源117
第7章 基于對象的編程118
71 概述118
72 用類實現(xiàn)一個Time 抽象數據類型118
73 特殊屬性121
74 控制屬性訪問122
75 為構造函數使用默認參數128
76 析構函數131
77 類屬性131
78 合成:對象引用作為類成員使用133
79 數據抽象和信息隱藏135
710 軟件重用性136
目錄ix
第8章 自定義類138
81 概述138
82 自定義字符串表示:__str__方法138
83 自定義屬性訪問140
84 運算符重載142
85 運算符重載的限制143
86 重載一元運算符144
87 重載二元運算符144
88 重載內建函數145
89 類型轉換146
810 案例分析:Rational 類146
811 重載序列運算152
812 案例分析:SingleList 類152
813 重載映射運算156
814 案例分析:SimpleDictionary 類157
第9章 面向對象編程:繼承159
91 概述159
92 繼承:基類和派生類160
93 創(chuàng)建基類和派生類161
94 在派生類中覆蓋基類方法164
95 繼承的軟件工程學165
96 合成與繼承166
97 "使用"和"知道"關系166
98 案例分析:Point, Circle 和Cylinder167
99 抽象基類和具體類170
910 案例分析:繼承接口和實現(xiàn)170
911 多態(tài)性173
912 類和Python 22174
第10章 圖形用戶界面組件(一)188
101 概述188
102 Tkinter 簡介189
103 簡單的Tkinter 例子:Label 組件190
104 事件處理模型192
105 Entry 組件192
106 Button 組件195
107 Checkbutton 和Radiobutton 組件197
108 鼠標事件處理201
109 鍵盤事件處理205
1010 布局管理器206
1011 洗牌和發(fā)牌模擬212
1012 因特網和萬維網資源214
第11章 圖形用戶界面組件(二)215
111 概述215
112 Pmw 簡介215
113 ScrolledListBox 組件215
x Python 編程金典
114 ScrolledText 組_217
115 MenuBar 組件219
116 彈出菜單222
117 Canvas 組件224
118 Scale 組件225
119 其他GUI 工具_226
第12章 異常處理228
121 概述228
122 引發(fā)異常228
123 異常處理229
124 示例:DivideByZeroError 231
125 Python 的Exception 層次結構233
126 finally 子句234
127 Exception 對象和跟蹤237
128 程序自定義異常類239
第13章 字符串處理和正則表達式242
131 概述242
132 字符和字符串基礎242
133 字符串表示244
134 搜索字符串245
135 連接和分解字符串246
136 正則表達式247
137 編譯正則表達式和處理正則表達式對象248
138 正則表達式的重復和置位字符249
139 字符類和特殊序列251
1310 正則表達式的字符串處理函數253
1311 分組254
1312 因特網和萬維網資源255
第14章 文件處理和序列化256
141 概述256
142 數據層次結構256
143 文件和流257
144 創(chuàng)建順序訪問文件258
145 從順序訪問文件讀取數據260
146 更新順序訪問文件264
147 隨機訪問文件264
148 模擬隨機訪問文件:shelve 模塊265
149 將數據寫入shelve 文件265
1410 從shelve 文件獲取數據266
1411 示例:一個事務處理程序267
1412 對象序列化270
第15章 可擴展標記語言(XML)273
151 概述273
152 XML文檔273
153 XML命名空間276
目錄xi
154 文檔對象模型(DOM)279
155 Simple API for XML(SAX)279
156 文檔類型定義(DTD). 架構和驗證280
157 XML詞匯表286
158 可擴展樣式表語言(XSL) 291
159 因特網和萬維網資源295
第16章 Python 的XML處理297
161 概述297
162 動態(tài)生成XML內容297
163 XML處理包299
164 文檔對象模型(DOM)300
165 用xmlsax解析XML306
166 案例分析:用Python 和XML實現(xiàn)論壇308
167 因特網和萬維網資源320
第17章 數據庫應用程序編程接口(DB-API)321
171 概述321
172 關系數據庫模型321
173 關系數據庫簡介:Books 數據庫322
174 結構化查詢語言(SQL) 326
175 Python DB-API 規(guī)范337
176 數據庫查詢示例337
177 查詢Books 數據庫340
178 讀取. 插入和更新數據庫343
179 因特網和萬維網資源347
第18章 進程管理348
181 概述348
182 osfork 函數348
183 ossystem 函數和osexec 函數家族354
184 控制進程的輸入和輸出357
185 進程間通信360
186 信號處理362
187 發(fā)送信號363
第19章 多線程處理366
191 概述366
192 線程狀態(tài):生命期366
193 threadingThread 示例368
194 線程同步370
195 生產者/消費者關系:無線程同步371
196 生產者/消費者關系:有線程同步375
197 生產者/消費者關系:Queue 模塊379
198 生產者/消費者關系:循環(huán)緩沖區(qū)382
199 信號機387
1910 事件389
第20章 聯(lián)網391
201 概述391
xii Python 編程金典
202 通過HTTP 定址URL391
203 建立簡單服務器(使用流套接字)393
204 建立簡單客戶(使用流套接字)394
205 通過流套接字連接進行客戶/服務器交互395
206 通過數據文報進行無連接的客戶/服務器交互398
207 使用多線程服務器的客戶/服務器Tic-Tac-Toe 游戲400
第21章 安全性408
211 概述408
212 密碼系統(tǒng)古今談408
213 加密密鑰411
214 公鑰加密413
215 密碼破解414
216 密鑰協(xié)商協(xié)議415
217 密鑰管理415
218 數字簽名416
219 公鑰基礎結構417
2110 安全協(xié)議419
2111 身份驗證421
2112 安全攻擊423
2113 運行受限Python 代碼426
2114 網絡安全429
2115 隱寫術431
第22章 數據結構433
221 概述433
222 自引用類433
223 鏈表433
224 堆棧440
225 隊列442
226 樹443
第23章 案例分析:網上書店448
231 概述448
232 HTTP 會話和會話跟蹤技術448
233 在網上書店中跟蹤會話449
234 網上書店體系結構452
235 配置網上書店454
236 進入網上書店455
237 從數據庫獲得書籍列表456
238 查看一本書的詳細資料461
239 在購物車中添加商品464
2310 查看購物車465
2311 結賬469
2312 處理訂單471
2313 錯誤處理472
2314 處理無線客戶端(XHTML Basic 和WML)474
2315 因特網和萬維網資源493
目錄xiii
第24章 多媒體494
241 概述494
242 PyOpenGL 簡介494
243 PyOpenGL 示例494
244 Alice 簡介500
245 狐貍. 雞和種子問題500
246 pygame 簡介504
247 Python CD Playe505
248 Python Movie 509
249 用pygame 開發(fā)太空船游戲512
2410 因特網和萬維網資源523
第25章 Python 服務器頁(PSP)524
251 概述524
252 Python Servlet 524
253 PSP 簡介525
254 第一個PSP 示例526
255 隱式對象527
256 腳本編程528
257 標準動作530
258 預編譯指令539
259 案例分析:用Python 和XML實現(xiàn)論壇543
2510 因特網和萬維網資源557
附錄A Python 開發(fā)環(huán)境558
A1 概述558
A2 集成開發(fā)環(huán)境:IDLE558
A3 其他集成開發(fā)環(huán)境562
A4 因特網和萬維網資源564
附錄B Python 22 的其他特點565
B1 概述565
B2 迭代器565
B3 生成器572
B4 嵌套作用域575
B5 因特網和萬維網資源577