第1章 編程與Python
1.1 什麼是編程
1.1.1 硬件與軟件
1.1.2 編程語言
1.1.3 編程與調試
1.2 選擇Python的理由
1.2.1 Python是免費的自由軟件
1.2.2 Python是跨平颱的
1.2.3 Python功能強大
1.2.4 Python清晰優雅
1.3 安裝Python
1.3.1 在Windows 下安裝Python
1.3.2 在Linux下安裝Python
1.4 選擇開發工具
1.4.1 Python自帶開發工具:IDLE
1.4.2 文本編輯器:Emacs
1.4.3 Python開發工具:PythonWin
1.5 編輯和運行Python程序
1.5.1 你好,Python
1.5.2 運行程序文件
1.5.3 交互式運行Python
1.6 小結
1.7 本章習題
第2章 Python起步
2.1 Python語法基礎
2.1.1 縮進分層
2.1.2 代碼注釋
2.1.3 斷行
2.2 Python輸入/輸齣
2.2.1 接收鍵盤/輸入
2.2.2 顯示處理結果
2.3 用Python計算
2.3.1 算式與代數式運算
2.3.2 驚奇
2.4 小結
2.5 本章習題
第3章 Python數據類型
3.1 Python簡單數據類型
3.1.1 字符串(str)
3.1.2 整數(int)
3.1.3 浮點數(float)
3.1.4 類型轉換
3.2 字符串進階
3.2.1 原始字符串
3.2.2 格式化字符串
3.2.3 中文字符串處理
3.3 標誌符與賦值號
3.3.1 標誌符
3.3.2 賦值號“=”
3.4 Python結構數據類型
3.4.1 列錶(list)
3.4.2 元組(tuple)
3.4.3 字典(dict)
3.5 內置常量與邏輯運算符、比較運算符
3.5.1 常用內置常量
3.5.2 Python中邏輯運算符
3.5.3 Python中比較運算符
3.5.4 Python中其他邏輯操作符
3.6 序列
3.6.1 序列切片
3.6.2 序列內置操作
3.7 小結
3.8 本章習題
第4章 控製語句執行流程
4.1 用if選擇執行語句
4.1.1 if基礎
4.1.2 if語句的嵌套
4.2 用for循環執行語句
4.2.1 for基礎
4.2.2 for語句與break語句、continue語句
4.2.3 for語句與range()函數
4.2.4 for語句與內置迭代函數
4.3 用while循環執行語句
4.3.1 while基礎
4.3.2 增量賦值運算符
4.4 推導或內涵(list comprehension)
4.4.1 推導基礎
4.4.2 推導進階
4.5 小結
4.6 本章習題
第5章 自定義功能單元(一)
5.1 使用函數
5.1.1 聲明函數
5.1.2 調用函數
5.2 深入函數
5.2.1 默認值參數
5.2.2 參數傳遞
5.2.3 可變數量參數傳遞
5.2.4 拆解序列的函數調用
5.2.5 函數調用時參數的傳遞方法
5.3 變量的作用域
5.4 使用匿名函數(lambda)
5.5 Python常用內建函數
5.6 小結
5.7 本章習題
第6章 自定義功能單元(二)
6.1 麵嚮對象編程概述
6.1.1 萬物皆對象
6.1.2 對象優越性
6.1.3 類和對象
6.2 定義和使用類
6.2.1 定義類
6.2.2 使用類
6.3 類的屬性和方法
6.3.1 類的方法
6.3.2 類的屬性
6.3.3 類成員方法與靜態方法
6.4 類的繼承
6.4.1 類的繼承
6.4.2 多重繼承
6.4.3 方法重載
6.5 小結
6.6 本章習題
第7章 錯誤、異常和程序調試
7.1 語法錯誤
7.2 異常的處理
7.2.1 異常處理的基本語法
7.2.2 Python主要的內置異常及其處理
7.3 手工拋齣異常
7.3.1 用raise手工拋齣異常
7.3.2 assert語句
7.3.3 自定義異常類
7.4 用pdb調試程序
7.4.1 調試語句塊函數
7.4.2 調試函數
7.5 測試程序
7.5.1 用testmod函數測試
7.5.2 用testfile函數測試
7.6 小結
7.7 本章習題
第2篇 Python編程高階
第8章 復雜程序組織
8.1 模塊
8.1.1 模塊概述
8.1.2 自己編寫模塊
8.1.3 模塊位置
8.1.4 __pycache__目錄
8.1.5 具有獨立運行能力的模塊
8.2 包
8.2.1 包概述
8.2.2 包詳解
8.3 Python常用標準庫簡介
8.3.1 數學類模塊
8.3.2 日期與時間類
8.4 小結
8.5 本章習題
第9章 迭代器、生成器與裝飾器
9.1 迭代器
9.1.1 迭代器概述
9.1.2 自定義迭代器
9.1.3 內置迭代器工具
9.2 生成器
9.2.1 生成器創建
9.2.2 深入生成器
9.2.3 生成器與協程
9.3 裝飾器
9.3.1 裝飾器概述
9.3.2 裝飾函數
9.3.3 裝飾類
9.4 小結
9.5 本章習題
第10章 Python進階話題
10.1 函數與命名空間
10.2 閉包及其應用
10.2.1 閉包概述
10.2.2 閉包與延遲求值
10.2.3 閉包與泛型函數
10.3 上下文管理器
10.4 用字符串操作對象屬性
10.5 用字典構造分支程序
10.6 重載類的特殊方法
10.7 鴨子類型(duck typing)與多態
10.8 小結
10.9 本章習題
第11章 文件與文件係統
11.1 文件操作基礎
11.1.1 open()函數
11.1.2 用fileinput操作文件
11.2 常用文件和目錄操作
11.2.1 獲得當前路徑
11.2.2 獲得目錄中的內容
11.2.3 創建目錄
11.2.4 刪除目錄
11.2.5 判斷是否是目錄
11.2.6 判斷是否為文件
11.2.7 遍曆某目錄下的所有文件和目錄
11.2.8 由文件名批量獲取姓名和考號
11.2.9 批量文件重命名
11.3 編譯為可執行文件
11.3.1 用py2exe生成可執行程序
11.3.2 用cx_freeze生成可執行文件
11.4 小結
11.5 本章習題
第12章 基於tkinter的GUI編程
12.1 GUI概述
12.1.1 GUI是什麼
12.1.2 Python編寫GUI程序庫
12.2 tkinter圖形化庫簡介
12.2.1 創建GUI程序第一步
12.2.2 創建GUI程序第二步
12.3 tkinter組件
12.3.1 組件分類
12.3.2 布局組件
12.4 常用tkinter組件
12.4.1 按鈕
12.4.2 文本框
12.4.3 標簽
12.4.4 菜單
12.4.5 單選框和復選框
12.4.6 繪製圖形
12.5 響應操作事件
12.5.1 事件基礎
12.5.2 響應事件
12.6 對話框
12.6.1 標準對話框
12.6.2 自定義對話框
12.7 小結
12.8 本章習題
第13章 正則錶達式
13.1 正則錶達式基礎
13.1.1 正則錶達式概述
13.1.2 正則錶達式基本元字符
13.1.3 常用正則錶達式
13.2 re模塊
13.2.1 正則匹配搜索函數
13.2.2 sub()與subn()函數
13.2.3 split()函數
13.2.4 正則錶達式對象
13.3 分組匹配與匹配對象使用
13.3.1 分組基礎
13.3.2 分組擴展
13.3.3 匹配對象與組的使用
13.3.4 匹配對象與索引使用
13.4 正則錶達式應用示例
13.5 小結
13.6 本章習題
第14章 網絡編程
14.1 網絡編程基礎
14.1.1 什麼是網絡
14.1.2 網絡協議
14.1.3 地址與端口
14.2 套接字的使用
14.2.1 用socket建立服務器端程序
14.2.2 用socket建立客戶端程序
14.2.3 用socket建立基於UDP協議的服務器與客戶端程序
14.2.4 用socketserver模塊建立服務器
14.3 urllib與http包使用
14.3.1 urllib和http包簡介
14.3.2 用urllib和http包訪問網站
14.4 用poplib與smtplib庫收發郵件
14.4.1 用poplib檢查郵件
14.4.2 用smtplib發送郵件
14.5 用ftplib訪問FTP服務
14.5.1 ftplib模塊簡介
14.5.2 使用Python訪問FTP
14.6 小結
14.7 本章習題
第15章 綫程和進程
15.1 綫程
15.1.1 用threading.Thread直接在綫程中運行函數
15.1.2 通過繼承threading.Thread類來創建綫程
15.1.3 綫程類Thread使用
15.2 進程
15.2.1 進程基礎
15.2.2 用Popen類創建進程
15.3 小結
15.4 本章習題
第16章 數據庫編程
16.1 Python數據庫應用程序接口
16.1.1 數據庫應用程序接口概述
16.1.2 數據庫遊標的使用
16.2 Python操作SQLite3數據庫
16.2.1 SQLite3數據庫簡介
16.2.2 SQLite3數據庫操作實例
16.3 Python操作MariaDB數據庫
16.3.1 MariaDB數據庫簡介
16.3.2 建立MariaDB數據庫操作環境
16.3.3 MariaDB數據庫操作實例
16.4 Python操作MongoDB數據庫
16.4.1 MongoDB數據庫簡介
16.4.2 建立MongoDB數據庫操作環境
16.4.3 MongoDB數據庫基礎
16.4.4 MongoDB數據庫操作實例
16.4.5 用對象關係映射(ORM)工具操作MongoDB數據庫
16.5 小結
16.6 本章習題
第17章 Web網站編程
17.1 Web網站編程概述
17.2 Flask Web框架及其應用
17.2.1 Flask Web框架簡介
17.2.2 Flask Web框架初識
17.2.3 URL裝飾器與URL參數傳遞
17.2.4 GET與POST請求的參數傳遞
17.2.5 使用cookie與session跟蹤客戶
17.2.6 使用靜態文件資源與頁麵文件
17.2.7 接收上傳文件
17.2.8 在Flask框架中使用數據庫
17.3 Tornado Web框架及其應用
17.3.1 Tornado框架簡介
17.3.2 Tornado框架初識
17.3.3 請求參數的獲取
17.3.4 用cookie與安全cookie跟蹤客戶
17.3.5 URL轉嚮與靜態文件資源
17.3.6 Tornado Web框架應用舉例
17.4 小結
17.5 本章習題
第18章 數據結構基礎
18.1 錶、棧和隊列
18.1.1 用列錶來創建錶
18.1.2 自定義棧數據結構
18.1.3 實現隊列功能
18.2 樹和圖
18.2.1 用列錶構建樹
18.2.2 實現二叉樹類與遍曆二叉樹
18.2.3 用字典構建與搜索圖
18.3 查找與排序
18.3.1 實現二分查找
18.3.2 用二叉樹排序
18.4 小結
18.5 本章習題
第19章 用Pillow庫處理圖片
19.1 第三方Pillow庫概述
19.1.1 安裝第三方Pillow庫
19.1.2 Pillow庫簡介
19.1.3 Pillow庫處理圖像基礎
19.1.4 Image模塊中函數的使用
19.1.5 Image模塊中Image類的使用
19.1.6 使用ImageChops模塊進行圖片閤成
19.1.7 使用ImageEnhance模塊增強圖像效果
19.1.8 使用ImageFilter模塊的濾鏡
19.1.9 使用ImageDraw模塊畫圖
19.2 使用Pillow庫處理圖片舉例
19.2.1 圖片格式轉換
19.2.2 批量生成縮略圖
19.2.3 為圖片添加Logo
19.3 小結
19.4 本章習題
第3篇 Python編程實戰
第20章 案例1 做一個Windows上的360工具
20.1 案例背景
20.2 從創建圖形化界麵開始
20.2.1 創建基本圖形化工作界麵
20.2.2 響應菜單事件
20.3 清理垃圾文件
20.3.1 迭代目錄
20.3.2 掃描垃圾文件
20.3.3 多綫程加速
20.3.4 掃描所有磁盤
20.3.5 刪除垃圾文件
20.4 搜索文件
20.4.1 搜索超大文件
20.4.2 按名稱搜索文件
20.5 小結
第21章 案例2 Python搞定大數據
21.1 案例背景
21.1.1 大數據處理方式概述
21.1.2 處理日誌文件
21.1.3 要實現的案例目標
21.2 分割日誌文件
21.3 用Map函數處理小文件
21.4 用Reduce函數歸集數據
21.5 小結
· · · · · · (
收起)