本書側(cè)重于Python程序開發(fā)過程中重點和難點的理解,結(jié)合具有典型性的程序案例,用通俗的語言由淺入深、循序漸進地幫助讀者掌握Python語言。知識點都使用生活中的案例幫助理解,每個案例都有詳盡的代碼解釋,實戰(zhàn)部分也會將Python語言與Web和數(shù)據(jù)分析等技術相結(jié)合,進行技術應用上的擴展。
本書由Python編程基礎、Python高級編程、Python應用技術和Python實戰(zhàn)演練4個部分組成。Python編程基礎針對程序設計的入門,介紹從過程化的編程要點到代碼中使用的各種數(shù)據(jù)類型;Python高級編程針對程序設計的提高,介紹從面向?qū)ο蟮氖褂玫剿惴ㄉ系奶嵘;Python應用技術針對程序設計的場景運用,介紹從Web的開發(fā)到數(shù)據(jù)分析的思路;Python實戰(zhàn)演練針對程序設計的邏輯,從游戲的開發(fā)到基本網(wǎng)站的建設。旨在使讀者通過對本書內(nèi)容一步步的學習,能夠?qū)W會編程方法,打好編程基礎,提升編程能力,擴展編程應用,鍛煉編程思維,培養(yǎng)編程邏輯。
本書適用于學習Python的初學者、愛好者和進取者。對程序沒有概念的人員可以看得懂,學得會;有程序基礎的人員可以加點“料”,擴思路;程序上的“大咖”可以多提寶貴意見,更好地為讀者服務。
李剛,項目經(jīng)理,從事IT行業(yè)超過十年,具有豐富的一線項目、授課、就業(yè)相關的實戰(zhàn)經(jīng)驗。通曉Java、前端、Python等當下流行的技術,研究方向?qū)W⒂谌斯ぶ悄堋⒋髷?shù)據(jù)等領域。
第1章 認識Python語言
1.1 Python的起源 002
1.2 Python優(yōu)缺點 003
1.3 應用場景 004
1.4 學習建議 005
1.5 本章小結(jié) 006
第2章 編程環(huán)境的搭建
2.1 搭建Python環(huán)境 008
2.2 Python環(huán)境變量的設置 011
2.3 PyCharm編輯工具 012
2.4 本章小結(jié) 019
第3章 變量和數(shù)據(jù)類型
3.1 變量的提出 021
3.2 字符串的認識 024
3.3 數(shù)字的認識 032
3.3.1 整數(shù) 033
3.3.2 浮點數(shù) 033
3.4 注釋 034
3.5 能力測試 035
3.6 面試真題 036
3.7 本章小結(jié) 036
第4章 順序結(jié)構(gòu)
4.1 順序程序設計 038
4.2 常量與變量 039
4.3 運算符和表達式 043
4.4 強制類型轉(zhuǎn)換 050
4.5 Python基本語句 052
4.6 能力測試 056
4.7 面試真題 056
4.8 本章小結(jié) 056
第5章 分支結(jié)構(gòu)
5.1 趣味性程序示例 058
5.2 數(shù)字的認識 059
5.3 條件測試 065
5.4 能力測試 067
5.5 面試真題 068
5.6 本章小結(jié) 069
第6章 循環(huán)結(jié)構(gòu)
6.1 while循環(huán) 071
6.2 while...else...循環(huán) 075
6.3 死循環(huán) 077
6.4 for循環(huán)簡介 077
6.5 循環(huán)結(jié)束語句 080
6.6 嵌套循環(huán) 081
6.7 能力測試 084
6.8 面試真題 084
6.9 本章小結(jié) 085
第7章 列表
7.1 列表的概念 087
7.2 修改、添加和刪除元素 089
7.3 組織列表 094
7.4 使用列表時避免索引錯誤 096
7.5 能力測試 097
7.6 面試真題 097
7.7 本章小結(jié) 098
第8章 操作列表
8.1 遍歷整個列表 100
8.2 校驗列表元素 103
8.3 創(chuàng)建數(shù)值列表 105
8.4 列表的復制 106
8.5 字符串切分成列表split()方法 114
8.6 能力測試 116
8.7 面試真題 117
8.8 本章小結(jié) 117
第9章 元組和集合
9.1 元組的定義 119
9.2 遍歷元組中的所有值 120
9.3 元組的合并和重復 121
9.4 元組的其他特性 122
9.5 元組中的方法 126
9.6 集合(set) 127
9.7 集合操作 129
9.8 集合的運算 131
9.9 能力測試 135
9.10 面試真題 136
9.11 本章小結(jié) 136
第10章 元組和集合
10.1 一個簡單的字典:游戲玩家字典 138
10.2 元組的其他特性 140
10.3 遍歷字典 143
10.4 嵌套 145
10.5 能力測試 148
10.6 面試真題 148
10.7 本章小結(jié) 149
第11章 函數(shù)
11.1 定義函數(shù) 151
11.2 傳遞實參 153
11.3 返回值 157
11.4 將函數(shù)存儲在模塊中 161
11.5 lambda匿名函數(shù) 162
11.6 函數(shù)綜合實戰(zhàn):托兒所學員管理程序 164
11.7 能力測試 166
11.8 面試真題 167
11.9 本章小結(jié) 167
第12章 算法
12.1 遞歸算法及其程序?qū)崿F(xiàn) 169
12.2 冒泡排序算法及其實現(xiàn) 173
12.3 選擇排序 177
12.4 插入排序 180
12.5 歸并排序 184
12.6 快速排序 187
12.7 能力測試 191
12.8 面試真題 192
12.9 本章小結(jié) 193
第13章 裝飾器
13.1 理解裝飾器 195
13.2 裝飾器應用實戰(zhàn) 198
13.3 裝飾器的幾種實現(xiàn)方式 202
13.4 能力測試 204
13.5 面試真題 204
13.6本章小結(jié) 205
第14章 生成器與迭代器
14.1 生成器的理解 207
14.2 生成器的語法 207
14.3 生成器表達式 213
14.4 迭代器與迭代對象 215
14.5 Python庫中的一些生成器 215
14.6 能力測試 218
14.7 面試真題 218
14.8 本章小結(jié) 219
第15章 類和對象
15.1 對象和類 221
15.2 創(chuàng)建和使用類 221
15.3 使用類和實例 226
15.4 面向?qū)ο蟮娜筇匦?232
15.5 繼承 233
15.6 面向?qū)ο蟮膽脤崙?zhàn):剪刀石頭布 238
15.7 導入類 241
15.8 面向?qū)ο笫褂玫木幋a建議 242
15.9 能力測試 243
15.10 面試真題 243
15.11 本章小結(jié) 244
第16章 魔術方法
16.1 封裝 246
16.2 多態(tài) 249
16.3 魔術方法 250
16.4 類的常用函數(shù) 256
16.5 類中的裝飾器 257
16.6 能力測試 260
16.7 面試真題 260
16.8 本章小結(jié) 261
第17章 文件和異常
17.1 從文件中讀取數(shù)據(jù) 263
17.2 寫入文件 268
17.3 os模塊的一些文件類操作 272
17.4 異常 276
17.5 存儲數(shù)據(jù) 278
17.6 能力測試 281
17.7 面試真題 281
17.8 本章小結(jié) 282
第18章 進程和線程
18.1 進程的概念 284
18.2 進程狀態(tài)的理解 285
18.3 多進程的操作 287
18.4 進程鎖 294
18.4.1 進程共享變量 294
18.4.2 進程鎖實戰(zhàn):百進程搶百票 296
18.5 線程 298
18.5.1 線程的定義實戰(zhàn):英語背單詞 299
18.5.2 線程類定義的寫法實戰(zhàn):英語背單詞面向?qū)ο缶幊?300
18.6 線程鎖 300
18.6.1 線程間的通信實戰(zhàn):投注站線程間通信 301
18.6.2 多線程實戰(zhàn):百線程搶百票 302
18.6.3 GIL 303
18.6.4 多線程GIL實戰(zhàn):百線程搶百票 303
18.7 多線程實現(xiàn)生產(chǎn)者消費者模式 304
18.8 能力測試 305
18.9 面試真題 305
18.10 本章小結(jié) 306
第19章 Django開發(fā)入門
19.1 Web項目簡介 308
19.2 MTV框架 309
19.3 Django框架介紹 310
19.3.1 Django介紹 310
19.3.2 Django的發(fā)展歷史 310
19.3.3 Django的安裝 310
19.4 創(chuàng)建第一個Django項目 310
19.4.1 創(chuàng)建項目:愛情留言板 311
19.4.2 創(chuàng)建應用:留下足跡 313
19.5 開發(fā)第一個Django項目 315
19.5.1 設計項目的Model 316
19.5.2 自動化后臺應用操作Model 320
19.5.3 創(chuàng)建一個視圖函數(shù) 323
19.5.4 創(chuàng)建一個URL模式 324
19.5.5 創(chuàng)建模板 326
19.6 項目的修改 329
19.7 Django原理 330
19.8 能力測試 330
19.9 面試真題 331
19.10 本章小結(jié) 331
第20章 數(shù)據(jù)分析初步
20.1 數(shù)據(jù)分析概述 333
20.2 數(shù)據(jù)分析模塊Pandas概述 334
20.3 Series數(shù)據(jù)結(jié)構(gòu) 335
20.4 DataFrame數(shù)據(jù)結(jié)構(gòu) 345
20.5 數(shù)據(jù)導入導出 352
20.6 數(shù)據(jù)加工整理 353
20.7 數(shù)據(jù)分析簡單入門 359
20.8 能力測試 359
20.9 面試真題 360
20.10 本章小結(jié) 360
第21章 烏鴉喝水游戲?qū)崙?zhàn)
21.1 需求分析 362
21.2 系統(tǒng)設計 362
21.3 系統(tǒng)開發(fā)必備 365
21.4 烏鴉喝水的實現(xiàn) 365
21.5 本章小結(jié) 400
第22章 鮮花禮品商品頁實戰(zhàn)
22.1 需求分析 402
22.2 系統(tǒng)功能設計 402
22.3 系統(tǒng)開發(fā)必備 403
22.4 數(shù)據(jù)表模型 406
22.5 admin自動化數(shù)據(jù)管理工具實現(xiàn)數(shù)據(jù)的錄入 406
22.6 urls.py分發(fā)器路由文件的修改 407
22.7 View視圖方法的實現(xiàn) 409
22.8 Templates模板中index.html文件的實現(xiàn) 409
22.9 項目的測試 414
22.10 本章小結(jié) 414