Python快速入門精講 | 被動收入的投資秘訣 - 2024年11月
Python快速入門精講
本書從零基礎入門著手,通過合理的編排,首先引導讀者循序漸進地學習Python基本語法和語義,再掌握諸如文件和資料庫的處理、面向對象編程、開發圖形用戶界面、網路和多線程編程等實用技術,最後拓展了Python的一些熱門應用,如大數據和機器學習。本書通過豐富的案例和真切的經驗分享、詳細的文字講解和生動的在線視頻演示,給讀者帶來別樣的學習體驗。
本書非常適合沒有Python編程經驗的程序員,也適合工作中需要用到程序解決問題的非專業人員,由於獨特的編排和講解,同樣適合初學Python的學生,甚至可以當作全國電腦二級Python的教材使用。總之,對於第一次接觸編程的人來說,這是一本非常適合的書。
鄒琪鮮(Milo),13年的編程教學經驗,國內最早通過免費視頻的方式普及和傳播Python的傳道者。從2013年起陸續在百度、網易雲課堂等平台發布了數百個Python專題視頻,包括《瘋狂的Python》和《全能的Python:極客編程》等成套的視頻課程,全網超過40萬人通過作者的視頻課程入門並掌握了Python。
基礎入門篇
第0章 從零開始3
0.1克服程式設計恐懼3
0.2如何寫出好程式4
0.3為什麼選擇Python5
0.4Python的發展和應用6
0.5一些建議8
0.6多平臺搭建Python開發環境10
0.6.1什麼是開發環境10
0.6.2獲得Python安裝包11
0.6.3安裝Python12
0.7命令列模式及Python的第一次運行13
第1章 開始程式設計19
1.1第一個程式的誕生19
1.1.1程式設計動機19
1.1.2神奇的導入: import19
1.1.3畫一個五角星21
1.1.4Python對話22
1.1.5編寫程式23
1.2熟悉開發環境,提高程式設計效率25
1.3Python開發工具25
1.4協力廠商模組和工具管理26
1.5像程式師一樣寫代碼28
1.5.1注釋28
1.5.2模組導入33〖1〗〖2〗Python快速入門精講目錄1.5.3運算式和語句33
1.5.4合理利用空白33
第2章 程式師基礎38
2.1程式開發全域觀38
2.2數據的標籤:變數40
2.2.1聲明變數40
2.2.2變數名和值的關係42
2.3編寫可以跟使用者互動的程式:輸入、處理和輸出44
2.4快速理解物件和類型:數位和字串46
2.5運算子和運算式47
2.5.1算術運算子47
2.5.2設定運算子48
2.5.3比較運算子49
2.5.4邏輯運算子和布林值49
2.5.5成員運算子49
2.5.6其他運算子50
2.5.7運算子優先順序50
2.6如何快速獲取幫助51
2.7彩蛋:列印正弦波52
第3章 搞定字串55
3.1字串的基本定義55
3.1.1轉義字元56
3.1.2Docstring57
3.1.3原始字串57
3.1.4Unicode字串58
3.2序列58
3.2.1索引58
3.2.2切片59
3.3與字串相關的運算子60
3.3.1拼接和重複60
3.3.2比較運算子61
3.3.3成員判斷62
3.4靈活多變的字串操作63
3.4.1函數63
3.4.2物件和方法63
3.4.3分割和拼接66
3.4.4字串模組67
3.5字串格式化68
3.6遍歷字串70
第4章 流程控制72
4.1讓程式變智慧的分支結構:if語句73
4.1.1if語法結構73
4.1.2布林值與if75
4.1.3邏輯運算子與if76
4.2條件迴圈:while語句77
4.2.1while語句77
4.2.2while...else語句79
4.2.3閉環和break80
4.2.4確定次數的迴圈80
4.3反覆運算迴圈:for語句81
4.3.1容器和反覆運算器82
4.3.2實例:斐波那契數列84
4.3.3迴圈嵌套85
4.3.4迴圈控制continue85
第5章 列表和元組87
5.1《英雄無敵》反覆運算開發:構建英雄世界87
5.2程式中的資料倉庫:列表88
5.2.1創建列表88
5.2.2列表拆分89
5.3列表的序列化操作89
5.3.1索引和切片89
5.3.2運算子及函數90
5.3.3遍歷91
5.4列表的操作92
5.4.1可變的列表92
5.4.2列表的方法93
5.4.3字串和清單94
5.5Python的魔術94
5.5.1列表推導式95
5.5.2生成器運算式95
5.5.3一點建議96
5.6深拷貝、淺拷貝96
5.6.1賦值96
5.6.2淺拷貝98
5.6.3深拷貝99
5.7不可變的列表——元組100
5.7.1創建元組100
5.7.2元組賦值101
5.7.3列表和元組101
5.7.4什麼時候使用元組102
5.8《英雄無敵》需求落地102
第6章 分治策略——函數與模組105
6.1函數基礎105
6.1.1自訂函數105
6.1.2形參和實參106
6.1.3返回值107
6.2變數作用域108
6.2.1區域變數108
6.2.2全域變數109
6.2.3命名空間109
6.3參數的類型110
6.3.1默認參數110
6.3.2關鍵參數110
6.3.3冗餘參數處理111
6.3.4序列和字典做實參112
6.4內建函數112
6.5匿名函數:lambda運算式114
6.6生成器yield語句115
6.7模組和包116
6.7.1模組117
6.7.2導入模組117
6.7.3搜索路徑118
6.7.4包118
6.7.5__name__屬性119
第7章 字典和集合121
7.1字典121
7.1.1創建字典121
7.1.2字典的鍵和值122
7.1.3字典的相關操作122
7.1.4字典的方法123
7.2字典實例:統計高頻詞124
7.3字典的妙用125
7.4集合126
7.4.1Python集合126
7.4.2集合的方法和應用127
進階應用篇
第8章 檔和資料持久化133
8.1文件讀取133
8.2文件寫入136
8.3文件內的指針137
8.4文件關閉138
8.5檔案名和路徑138
8.6os模組140
8.7捕獲異常141
8.8數據序列化142
8.8.1pickle模組142
8.8.2json模組143
8.9CSV文件144
8.9.1CSV模組144
8.9.2CSV 讀寫145
第9章 物件導向148
9.1從《英雄無敵》開始認識物件148
9.2從面向過程到物件導向150
9.3類和對象151
9.4屬性和方法152
9.4.1類的屬性153
9.4.2類的方法154
9.4.3內置屬性和方法155
9.5類的繼承156
9.5.1使用繼承156
9.5.2重載158
9.6多態160
9.7內置裝飾器160
9.8《英雄無敵》物件導向設計162
第10章 異常處理165
10.1異常165
10.2Python的異常類166
10.3捕獲和處理異常167
10.3.1try...except...語句167
10.3.2try...except...else語句168
10.3.3finally子句以及嵌套169
10.3.4誰都跑不了169
10.4拋出異常170
10.4.1raise語句170
10.4.2自訂異常類171
10.4.3assert語句171
第11章 開發圖形化使用者介面173
11.1GUI173
11.2tkinter174
11.2.1創建空白窗口174
11.2.2添加組件175
11.2.3事件綁定176
11.2.4其他組件176
11.3wxPython177
11.3.1子類化開發: 空白窗口178
11.3.2添加元件及視窗佈局179
11.3.3事件綁定182
11.3.4佈局管理器184
11.4GUI視覺化構建工具:用wxFormBuilder開發GUI程式187
11.5生成可執行的二進位檔案193
第12章 Python玩轉資料庫195
12.1資料庫初始195
12.2SQLite資料庫196
12.3Python連接MySQL198
第13章 分身有術:多執行緒程式設計201
13.1進程與執行緒201
13.2多執行緒202
13.2.1創建執行緒202
13.2.2執行緒物件的方法204
13.2.3執行緒鎖205
13.2.4多執行緒的本質207
13.3實例:批量主機掃描207
第14章 網路應用程式設計210
14.1網路應用開發210
14.2socket程式設計211
14.2.1socket連接過程211
14.2.2創建socket對象212
14.2.3基於TCP的用戶端和服務端213
14.2.4基於UDP實現多執行緒收發消息215
14.3實例:局域網聊天室216
14.3.1需求分析216
14.3.2概要設計217
14.3.3詳細設計217
14.3.4編碼階段219
第15章 規則運算式225
15.1規則運算式的常用字符225
15.1.1普通字元225
15.1.2元字元226
15.2Python中的re模組229
15.2.1規則運算式主要功能229
15.2.2re模組使用的兩種形式229
15.2.3re常用函數及方法229
15.3實例:一隻小爬蟲232
拓展案例篇
第16章 小白也玩大數據241
16.1好玩的大數據241
16.2大資料技術242
16.3MapReduce模型243
16.4案例:實現MapReduce模型243
16.4.1案例設計243
16.4.2分割檔243
16.4.3編寫map函數244
16.5彩蛋:詞雲249
第17章 語音辨識技術252
17.1選擇語音辨識包252
17.2speech模組253
17.2.1語音辨識開發環境搭建253
17.2.2環境配置和調試254
17.2.3文字和聲音相互轉化255
17.2.4speech模組的其他方法256
第18章 六行代碼入門機器學習257
18.1人工智慧發展簡史257
18.2機器學習初體驗:搭建機器學習環境258
18.3機器學習的過程260
18.3.1收集訓練資料260
18.3.2訓練分類器並做出預測261
參考文獻263