1. 程式人生 > >跟老齊學Python:輕鬆入門pdf

跟老齊學Python:輕鬆入門pdf

第1季 基礎
第0章 預備 2
0.1 關於Python的故事 2
0.1.1 Python的昨天、今天和明天 3
0.1.2 Python的特點 4
0.1.3 Python哲學 5
0.2 從小工到專家 5
0.2.1 零基礎 6
0.2.2 閱讀程式碼 6
0.2.3 除錯程式 7
0.3 安裝Python 7
0.3.1 Ubuntu系統 8
0.3.2 Windows系統 9
0.3.3 Mac OS X系統 9
0.4 整合開發環境(IDE) 9
0.4.1 值得紀念的時刻:Hello world 9
0.4.2 整合開發環境概述 10
0.4.3 Python的IDE 12
第1章 基本的物件型別 13
1.1 數字 13
1.1.1 數字 14
1.1.2 變數 15
1.1.3 簡單的四則運算 16
1.1.4 整數溢位問題 17
1.2 除法 17
1.2.1 整數與整數相除 17
1.2.2 浮點數與整數相除 18
1.2.3 引用模組解決除法問題 19
1.2.4 餘數 20
1.2.5 四捨五入 20
1.3 常用數學函式和運算優先順序 21
1.3.1 使用math模組 21
1.3.2 兩個函式 23
1.3.3 運算優先順序 23
1.4 第一個簡單的程式 24
1.4.1 程式 24
1.4.2 用IDE程式設計 25
1.4.3 Hello,World 25
1.4.4 解一道題目 26
1.5 字串 28
1.5.1 字串 29
1.5.2 變數和字串 30
1.5.3 連線字串 31
1.5.4 轉義字元 33
1.5.5 原始字串 34
1.5.6 raw_input和print 34
1.5.7 索引和切片 37
1.5.8 基本操作 39
1.5.9 常用的字串方法 42
1.5.10 字串格式化輸出 45
1.6 字元編碼 47
1.6.1 編碼 47
1.6.2 計算機中的字元編碼 49
1.6.3 encode和decode 50
1.6.4 避免中文是亂碼 51
1.7 列表 52
1.7.1 定義 52
1.7.2 索引和切片 53
1.7.3 反轉 54
1.7.4 對list的操作 55
1.7.5 列表的函式 56
1.8 比較列表和字串 66
1.8.1 相同點 66
1.8.2 區別 67
1.8.3 多維列表 68
1.8.4 列表和字串的互相轉化 69
1.8.5 "[sep]".join(list) 69
1.9 元組 70
1.9.1 定義 70
1.9.2 索引和切片 71
1.9.3 用途 72
1.10 字典 72
1.10.1 建立字典 73
1.10.2 訪問字典的值 74
1.10.3 基本操作 75
1.10.4 字串格式化輸出 76
1.10.5 相關概念 77
1.10.6 字典的函式 77
1.11 集合 86
1.11.1 建立集合 86
1.11.2 集合的函式 88
1.11.3 補充知識 91
1.11.4 不變的集合 91
1.11.5 集合運算 92
第2章 語句和檔案 95
2.1 運算子 95
2.1.1 算術運算子 95
2.1.2 比較運算子 96
2.1.3 邏輯運算子 97
2.2 簡單語句 99
2.2.1 print 100
2.2.2 import 101
2.2.3 賦值 102
2.3 條件語句 104
2.3.1 if語句 104
2.3.2 if … elif … else 105
2.3.3 三元操作符 107
2.4 for迴圈 107
2.4.1 簡單的for迴圈 107
2.4.2 range(start,stop[, step]) 109
2.4.3 for的物件 112
2.4.4 zip() 114
2.4.5 enumerate() 117
2.4.6 列表解析 119
2.5 while迴圈 120
2.5.1 猜數字遊戲 120
2.5.2 break和continue 123
2.5.3 while...else 123
2.5.4 for...else 124
2.6 檔案 124
2.6.1 開啟檔案 125
2.6.2 建立檔案 127
2.6.3 使用with 128
2.6.4 檔案的狀態 129
2.6.5 read/readline/readlines 129
2.6.6 讀很大的檔案 132
2.6.7 seek( ) 133
2.7 迭代 134
2.7.1 迭代工具 135
2.7.2 檔案迭代器 137
第3章 函式 139
3.1 理解函式 139
3.1.1 變數不僅僅是數 140
3.1.2 建立簡單函式 140
3.1.3 建立實用的函式 141
3.1.4 關於命名 143
3.1.5 呼叫函式 144
3.1.6 注意事項 145
3.1.7 返回值 146
3.1.8 函式中的文件 148
3.2 名詞辨析 149
3.2.1 引數和變數 149
3.2.2 全域性變數和區域性變數 150
3.2.3 名稱空間 151
3.3 引數收集 152
3.3.1 引數收集 153
3.3.2 更優雅的方式 155
3.3.3 綜合貫通 156
3.4 特殊函式 158
3.4.1 遞迴 158
3.4.2 幾個特殊函式 160
3.5 練習 166
3.5.1 解一元二次方程 166
3.5.2 統計考試成績 168
3.5.3 找質數 170
3.5.4 編寫函式的注意事項 171
第2季 進階
第4章 類 174
4.1 基本概念 174
4.1.1 問題空間 175
4.1.2 物件 175
4.1.3 面向物件 176
4.1.4 類 177
4.1.5 編寫類 178
4.2 詳解類 179
4.2.1 新式類和舊式類 179
4.2.2 建立類 181
4.2.3 類中的函式(方法) 183
4.2.4 類和例項 185
4.2.5 self的作用 185
4.2.6 文件字串 186
4.3 辨析有關概念 187
4.3.1 類屬性和例項屬性 187
4.3.2 資料流轉 189
4.3.3 名稱空間 191
4.3.4 作用域 193
4.4 繼承 194
4.4.1 基本概念 195
4.4.2 多重繼承 196
4.4.3 多重繼承的順序 197
4.4.4 super函式 198
4.5 方法 200
4.5.1 繫結方法 200
4.5.2 非繫結方法 201
4.5.3 靜態方法和類方法 201
4.6 多型和封裝 203
4.6.1 多型 203
4.6.2 封裝和私有化 206
4.7 特殊屬性和方法 208
4.7.1 __dict__ 208
4.7.2 __slots__ 212
4.7.3 __getattr__、__setattr__和其他類似方法 213
4.7.4 獲得屬性順序 217
4.8 迭代器 218
4.8.1 __iter__() 218
4.8.2 range()和xrange() 220
4.9 生成器 221
4.9.1 簡單的生成器 221
4.9.2 定義和執行過程 223
4.9.3 yield 224
4.9.4 生成器方法 225
第5章 錯誤和異常 227
5.1 錯誤 227
5.2 異常 227
5.3 處理異常 230
5.3.1 try...except... 230
5.3.2 處理多個異常 232
5.3.3 else子句 234
5.3.4 finally子句 235
5.3.5 assert語句 236
第6章 模組 239
6.1 編寫模組 239
6.1.1 模組是程式 239
6.1.2 模組的位置 241
6.1.3 __all__在模組中的作用 243
6.1.4 包和庫 245
6.2 自帶電池 245
6.2.1 引用方式 246
6.2.2 深入探究 247
6.2.3 幫助、文件和原始碼 248
6.3 標準庫 250
6.3.1 sys 250
6.3.2 copy 253
6.3.3 os 254
6.3.4 heapq 261
6.3.5 deque 266
6.3.6 calendar 267
6.3.7 time 269
6.3.8 datetime 273
6.3.9 urllib 275
6.3.10 urllib2 279
6.3.11 XML 280
6.3.12 JSON 287
6.4 第三方庫 289
6.4.1 安裝第三方庫 289
6.4.2 以requests為例 290
第7章 儲存資料 295
7.1 pickle 295
7.2 shelve 297
7.3 MySQL資料庫 299
7.3.1 MySQL概況 299
7.3.2 安裝 300
7.3.3 執行 300
7.3.4 安裝python-MySQLdb 301
7.3.5 連線資料庫 302
7.3.6 資料庫表 303
7.3.7 操作資料庫 304
7.3.8 更新資料 309
7.4 MongoDB資料庫 310
7.4.1 安裝MongoDB 311
7.4.2 啟動 311
7.4.3 安裝pymongo 312
7.4.4 連線MongoDB 312
7.4.5 編輯 314
7.5 SQLite資料庫 317
7.5.1 建立連線物件 318
7.5.2 遊標物件 318
7.6 電子表格 320
7.6.1 openpyl 321
7.6.2 其他第三方庫 326
第3季 實戰
第8章 用Tornado做網站 328
8.1 為做網站而準備 328
8.1.1 開發框架 328
8.1.2 Python框架 329
8.1.3 Tornado 329
8.1.4 安裝Tornado 330
8.2 分析Hello 331
8.2.1 Web伺服器工作流程 332
8.2.2 解剖標本 332
8.3 做個簡單的網站 336
8.3.1 基本結構 336
8.3.2 一個基本架勢 337
8.3.3 連線資料庫 340
8.3.4 登入介面 340
8.3.5 資料傳輸 345
8.3.6 資料處理 347
8.3.7 模板 350
8.3.8 轉義字元 355
8.3.9 模板繼承 357
8.3.10 CSS 358
8.3.11 cookie和安全 359
8.3.12 XSRF 362
8.3.13 使用者驗證 364
8.3.14 相關概念 367
8.3.15 Tornado的同步 368
8.3.16 非同步設定 369
第9章 科學計算 373
9.1 為計算做準備 373
9.1.1 閒談 373
9.1.2 安裝 374
9.1.3 基本操作 374
9.2 Pandas 376
9.2.1 基本的資料結構 376
9.2.2 讀取CSV檔案 382
9.2.3 處理股票資料 387