AIGC高效編程:Python從入門到高手
相關主題
商品描述
"《AIGC高效編程:Python從入門到高手》是專為零基礎讀者打造的 Python 編程基礎書籍,融合人工智能助手“通義靈碼”的強大編碼能力,幫助開發者輕松、高效地掌握 Python 編程技能。 本書共 20章,包含基礎語法、面向對象編程、高級語法、可視化技術、數據庫技術、爬蟲技術、網站開發、機器學習等內容,內容循序漸進,覆蓋了Python從語法基礎到進階技巧的完整體系。與此同時,書中創新性地引入“通義靈碼”的實踐講解與配置指導,手把手教讀者安裝並使用 AI助手進行智能補全、代碼分析與調試,讓AI真正成為你的學習夥伴與開發利器。 本書圍繞關鍵知識模塊展開,采用“知識導入→基礎講解一實戰案例開發→通義靈碼輔助優化”的結構,輔以典型代碼講解與 AI提示操作,幫助讀者快速建立編程思維,體驗 AI+代碼協作帶來的學習躍遷。 "
作者簡介
朱博,西北大學計算機碩士,研究方向為計算機視覺。擁有豐富的大數據分析、機器學習、人工智能以及應用開發實戰經驗。作為第一作者獲得省級比賽榮譽二十余項、國家級比賽榮譽十余項。獲2024華為開發者卓越價值貢獻獎,阿裏雲簽約作者、華為雲人工智能論壇版主。著有《ArkTS鴻蒙應用開發入門到實戰》、熱銷專欄[Python超入門指南]作者,致力於技術落地與知識傳播。
目錄大綱
目錄
第 1章 Python 簡介 1
1.1 AI 助手賦能開發者快速學習指南 1
1.2 Python 語言概述及應用領域 1
1.2.1 Python 的起源與發展 1
1.2.2 Python 的主要特點 2
1.2.3 Python 的應用領域 3
1.3 通義靈碼概述 4
1.3.1 通義靈碼簡介 4
1.3.2 通義靈碼的核心功能 4
1.4 環境搭建與 AI 編碼工具安裝 6
1.4.1 Python 的下載與安裝 6
1.4.2 選擇 IDE(PyCharm、VS Code) 8
1.4.3 配置 IDE 進行 Python 開發 8
1.4.4 通義靈碼的安裝和登錄指南 10
1.5 智能編碼助手使用配置指南 12
1.5.1 插件配置 13
1.5.2 網絡代理配置 16
1.6 習題 17
第 2章 基礎語法 18
2.1 語法規範 18
2.1.1 註釋規則 18
2.1.2 代碼縮進與格式化規範 19
2.1.3 編碼規範及 PEP8 標準 20
2.2 基本語法與變量 21
2.2.1 保留字與標識符 21
2.2.2 變量類型與類型推導 22
2.2.3 常量與變量的區別 23
2.3 基本數據類型 24
2.3.1 數字類型 24
2.3.2 字符串類型 26
2.3.3 布爾類型 28
2.3.4 數據類型轉換 28
2.4 運算符 30
2.4.1 算術運算符 30
2.4.2 比較運算符 33
2.4.3 邏輯運算符 34
2.4.4 位運算符 35
2.4.5 賦值運算符 37
2.5 習題 39
第 3 章 控制流 40
3.1 條件語句 40
3.1.1 if 語句 40
3.1.2 else 語句 41
3.1.3 elif 語句 41
3.1.4 嵌套條件語句 43
3.2 循環結構 45
3.2.1 for 循環 45
3.2.2 while 循環 47
3.2.3 break 與 continue 語句 48
3.3 控制流語句中的性能優化 49
3.3.1 優化嵌套循環與條件判斷 49
3.3.2 使用 else 和 elif 優化條件判斷 51
3.3.3 優化循環中的條件判斷 51
3.4 冒泡排序 51
3.4.1 冒泡排序算法介紹 52
3.4.2 冒泡排序的實現 53
3.4.3 冒泡排序改進 53
3.5 習題 56
第 4章 字符串操作 58
4.1 字符串概述 58
4.1.1 什麼是字符串 58
4.1.2 字符串的特點 58
4.2 字符串的輸入與輸出 59
4.2.1 使用 input() 獲取字符串輸入 59
4.2.2 使用 print()輸出字符串 59
4.3 字符串的索引與切片 61
4.3.1 字符串的索引 61
4.3.2 字符串的切片 62
4.4 字符串的遍歷與操作 63
4.4.1 遍歷字符串 63
4.4.2 常見字符串操作 64
4.5 習題 67
第 5章 列表操作 68
5.1 列表概述 68
5.1.1 什麼是列表 68
5.1.2 列表的特點 68
5.2 列表的創建與訪問 69
5.2.1 創建列表 69
5.2.2 訪問列表元素 70
5.3 列表的遍歷與操作 72
5.3.1 修改列表元素 72
5.3.2 列表的增刪操作 72
5.3.3 列表的排序與反轉 73
5.3.4 使用 for 循環遍歷列表 73
5.3.5 使用列表推導式 74
5.4 列表的嵌套與多維列表 78
5.4.1 列表嵌套的概念 78
5.4.2 多維列表的創建與訪問 78
5.4.3 嵌套列表的遍歷與操作 79
5.5 習題 84
第 6章 元組操作 85
6.1 元組概述 85
6.1.1 什麼是元組 85
6.1.2 元組與列表的區別 85
6.2 元組的創建與訪問 86
6.2.1 創建元組 86
6.2.2 訪問元組元素 86
6.2.3 使用索引與切片訪問元組 86
6.3 元組的操作 87
6.3.1 元組的連接與重復 88
6.3.2 元組的解包與賦值 88
6.4 列表與元組的性能比較 89
6.4.1 列表與元組的內存使用對比 90
6.4.2 列表與元組的操作速度對比 90
6.4.3 高效數據結構選擇 93
6.5 習題 94
第 7章 字典操作 95
7.1 字典概述 95
7.1.1 字典的特點 95
7.1.2 字典的應用場景 96
7.1.3 字典與列表、元組的區別 96
7.2 字典的創建與訪問 97
7.2.1 創建字典 97
7.2.2 訪問字典的元素 98
7.2.3 嵌套字典的創建與訪問 98
7.3 字典的增、刪、改 100
7.3.1 增加字典元素 100
7.3.2 修改字典元素 100
7.3.3 刪除字典元素 101
7.4 字典的查找與統計 102
7.4.1 查找鍵是否存在 102
7.4.2 獲取字典的所有鍵、值和鍵值對 103
7.4.3 字典的統計與分析 104
7.5 字典的操作與遍歷 108
7.5.1 遍歷字典 108
7.5.2 字典的合並 109
7.5.3 字典的深復制與淺復制 109
7.5.4 字典的排序與反轉 110
7.6 習題 112
第 8章 函數定義 113
8.1 函數概述 113
8.1.1 什麼是函數 113
8.1.2 函數與代碼復用 113
8.2 函數的定義與調用 114
8.2.1 定義函數 114
8.2.2 調用函數 114
8.2.3 函數的多次調用與遞歸調用 115
8.3 函數的參數 118
8.3.1 位置參數與關鍵字參數 118
8.3.2 默認參數 118
8.3.3 可變參數 119
8.3.4 參數傳遞的方式 120
8.4 函數的返回值 123
8.4.1 返回值 123
8.4.2 返回函數 123
8.4.3 無返回值與 None 125
8.5 習題 128
第 9章 面向對象編程 129
9.1 面向對象編程概述 129
9.1.1 面向對象的基本概念 129
9.1.2 面向對象編程的優勢 130
9.2 類的定義與使用 130
9.2.1 類的基本定義 130
9.2.2 類的實例化 130
9.2.3 類的實例屬性與方法 131
9.3 類的繼承與多態 134
9.3.1 繼承的基本概念 135
9.3.2 重寫與方法重載 135
9.3.3 多態的實現 136
9.4 類的封裝與抽象 141
9.4.1 封裝的概念與實現 141
9.4.2 抽象類與抽象方法 142
9.4.3 封裝與抽象的實踐 143
9.5 習題 146
第 10 章 高級語法 147
10.1 模塊與包 147
10.1.1 模塊的概念與創建 147
10.1.2 包的概念與創建 148
10.2 異常處理 151
10.2.1 異常處理的基本概念 151
10.2.2 自定義異常 153
10.3 生成器與疊代器 156
10.3.1 疊代器的概念與使用 156
10.3.2 生成器的概念與實現 157
10.3.3 生成器的應用與性能優化 158
10.4 上下文管理器 161
10.4.1 上下文管理器的概念 161
10.4.2 自定義上下文管理器 162
10.4.3 上下文管理器的應用場景 163
10.5 習題 165
第 11 章 並發與並行 166
11.1 並發與並行編程基礎 166
11.1.1 並發與並行的區別 166
11.1.2 多線程與多進程 167
11.2 線程與多線程編程 168
11.2.1 threading 模塊簡介 169
11.2.2 線程同步與線程安全 169
11.3 進程與多進程編程 171
11.3.1 multiprocessing 模塊簡介 172
11.3.2 進程的創建與通信 172
11.3.3 進程池與任務分配 173
11.4 異步編程與協程 175
11.4.1 asyncio 模塊介紹 175
11.4.2 async 和 await 關鍵字 175
11.4.3 事件循環與任務管理 176
11.5 習題 178
第 12 章 網絡編程 180
12.1 文件處理基礎 180
12.1.1 文件的概念與文件系統 180
12.1.2 文件的打開與關閉 180
12.1.3 文件的讀取與寫入操作 182
12.2 網絡編程基礎 184
12.2.1 網絡編程的概念 184
12.2.2 套接字與連接管理 185
12.2.3 異常處理與錯誤管理 187
12.3 傳輸層服務 190
12.3.1 傳輸層協議概述 190
12.3.2 TCP/IP 協議的原理 191
12.3.3 UDP 協議的原理 193
12.4 習題 193
第 13 章 正則表達式 195
13.1 正則表達式入門 195
13.1.1 基本概念 195
13.1.2 常用元字符與匹配規則 195
13.2 正則表達式語法詳解 196
13.2.1 量詞 196
13.2.2 分組、捕獲與斷言技巧 197
13.3 re 模塊實用技巧 198
13.3.1 re 模塊常用函數 198
13.3.2 匹配對象與編譯優化 199
13.4 正則表達式最佳實踐 201
13.4.1 常見模式示例 202
13.4.2 性能優化與調試建議 202
13.5 習題 203
第 14 章 可視化技術 205
14.1 Python 可視化基礎 205
14.1.1 可視化的概念與重要性 205
14.1.2 常用的 Python 可視化庫 206
14.2 使用 Matplotlib 進行基本繪圖 206
14.2.1 折線圖 206
14.2.2 柱狀圖與散點圖 207
14.2.3 設置圖形屬性與樣式 209
14.3 使用 Seaborn 進行高級可視化 214
14.3.1 繪制統計圖表 215
14.3.2 熱力圖與關聯圖 217
14.4 可視化優化與交互性 220
14.4.1 圖表優化與美化 220
14.4.2 添加交互功能 223
14.5 習題 225
第 15 章 數據庫技術 227
15.1 MySQL 數據庫概述 227
15.2 Python 連接 MySQL 數據庫 227
15.3 MySQL 數據庫基本操作 228
15.3.1 創建數據庫與數據表 228
15.3.2 插入數據 229
15.3.3 查詢數據 230
15.3.4 更新與刪除數據 230
15.4 數據庫事務與錯誤處理 233
15.4.1 事務的概念與控制 233
15.4.2 錯誤處理與異常捕獲 234
15.5 習題 235
第 16 章 爬蟲技術 237
16.1 爬蟲基礎概念 237
16.1.1 爬蟲的定義與應用 237
16.1.2 爬蟲工作流程 238
16.1.3 法律與道德問題 239
16.2 網絡請求與數據抓取 239
16.2.1 HTTP 協議基礎 239
16.2.2 數據抓取 240
16.2.3 解析數據 241
16.3 爬蟲實戰 242
16.3.1 解析網頁結構 242
16.3.2 獲取網頁內容 243
16.3.3 提取電影信息 244
16.3.4 數據存儲與輸出結果展示 246
16.4 習題 249
第 17 章 Web 框架開發 250
17.1 Flask 概述 250
17.2 環境搭建與項目創建 250
17.3 Flask 請求與響應 251
17.3.1 請求對象與請求數據 251
17.3.2 響應對象與響應數據 252
17.4 Flask 數據庫操作 253
17.4.1 Flask 連接數據庫 253
17.4.2 增、刪、改、查操作 254
17.5 習題 259
第 18 章 實時聊天應用系統 260
18.1 項目介紹 260
18.2 數據庫設計 260
18.3 用戶管理 262
18.3.1 註冊功能 262
18.3.2 登錄功能 263
18.4 實時聊天 265
18.5 習題 267
第 19 章 機器學習 269
19.1 機器學習概述 269
19.1.1 機器學習的定義與發展 269
19.1.2 機器學習算法簡介 269
19.2 機器學習工具與庫 270
19.2.1 數據預處理 271
19.2.2 數據清洗與缺失值處理 272
19.2.3 特征選擇與特征提取 272
19.3 監督學習 274
19.3.1 回歸問題 274
19.3.2 分類問題 277
19.4 無監督學習 279
19.4.1 聚類算法 279
19.4.2 降維算法 280
19.5 習題 283
第 20 章 機器學習項目實戰 284
20.1 預測泰坦尼克號乘客生還率 284
20.1.1 項目背景與目標 284
20.1.2 項目環境與工具準備 284
20.1.3 數據預處理 285
20.1.4 探索性分析 286
20.1.5 預測模型 288
20.2 MNIST 手寫數字識別 290
20.2.1 項目概述 290
20.2.2 項目實現 291
20.2.3 運行模型 293
20.2.4 結果說明 293
20.3 天氣預測系統 294
20.3.1 數據準備 294
20.3.2 模型構建 295
20.3.3 訓練和預測 296
20.3.4 可視化與結果 297
20.4 習題 299