《Python編程從小白到大牛》包括3篇,共16章。基礎(chǔ)篇(第1~7章)包括Python概述,數(shù)據(jù)類型和變量,流程控制,數(shù)據(jù)結(jié)構(gòu),函數(shù),模塊、包和文件,以及錯(cuò)誤、異常和調(diào)試;進(jìn)階篇(第8~11章)包括面向?qū)ο缶幊,進(jìn)程和線程,網(wǎng)絡(luò)編程,以及Python數(shù)據(jù)處理和數(shù)據(jù)庫(kù)編程;應(yīng)用篇(第12~16章)包括Web開(kāi)發(fā)應(yīng)用,圖形界面GUI和繪圖應(yīng)用,科學(xué)計(jì)算與數(shù)據(jù)分析應(yīng)用,深度學(xué)習(xí)應(yīng)用,以及云計(jì)算和自動(dòng)化運(yùn)維應(yīng)用!禤ython編程從小白到大!愤包括大量實(shí)戰(zhàn)案例,通過(guò)理論和實(shí)戰(zhàn)結(jié)合的方式幫助讀者快速學(xué)習(xí)撐握Python應(yīng)用。
《Python編程從小白到大牛》可作為人工智能、機(jī)器學(xué)習(xí)、人臉識(shí)別等應(yīng)用領(lǐng)域工程技術(shù)人員的參考手冊(cè),也可作為大中專院校人工智能、大數(shù)據(jù)科學(xué)與技術(shù)、自動(dòng)化、機(jī)器人工程、智能儀器儀表、機(jī)電一體化等專業(yè)及社會(huì)培訓(xùn)班有關(guān)Python課程的教材。
前言
基礎(chǔ)篇
第1章Python起步
1.1Python是什么
1.2Python版本選擇
1.3搭建編程環(huán)境
1.3.1配置Windows環(huán)境
1.3.2配置Linux環(huán)境
1.4【小白也要懂】Python源代碼的體系架構(gòu)
1.5【實(shí)戰(zhàn)】完成第一個(gè)Python程序
1.5.1IDEs編輯器
1.5.2print()輸出函數(shù)
1.5.3創(chuàng)建Hello_world.py文件
1.6【大牛講壇】Python解釋器詳解
第2章數(shù)據(jù)類型和變量
2.1數(shù)據(jù)類型
2.1.1整數(shù)類型
2.1.2浮點(diǎn)數(shù)類型
2.1.3布爾類型
2.1.4復(fù)數(shù)類型
2.1.5字符串類型
2.2變量
2.2.1命名規(guī)則
2.2.2使用方法
2.3字符串和編碼
2.3.1字符串
2.3.2編碼
2.3.3字符串操作
2.4數(shù)字和運(yùn)算符
2.4.1數(shù)和四則運(yùn)算
2.4.2關(guān)于數(shù)字的內(nèi)建函數(shù)
2.5列表
2.5.1List定義
2.5.2索引和切片
2.5.3反轉(zhuǎn)
2.6【小白也要懂】運(yùn)算符詳解
2.7【實(shí)戰(zhàn)】常用內(nèi)置數(shù)據(jù)結(jié)構(gòu)用法示例
2.8【大牛講壇】從底層理解內(nèi)存管理
第3章流程控制
3.1條件語(yǔ)句
3.1.1ifelse
3.1.2if…elif…else
3.1.3if嵌套
3.2循環(huán)語(yǔ)句
3.2.1while循環(huán)
3.2.2for循環(huán)
3.2.3嵌套循環(huán)
3.3循環(huán)語(yǔ)句中的List解析
3.4break和continue語(yǔ)句
3.5【小白也要懂】如何構(gòu)造程序邏輯
3.6【實(shí)戰(zhàn)】初識(shí)算法
3.7【大牛講壇】養(yǎng)成良好的編碼風(fēng)格很重要
第4章數(shù)據(jù)結(jié)構(gòu)
4.1線性數(shù)據(jù)結(jié)構(gòu)
4.1.1鏈表
4.1.2棧
4.1.3隊(duì)列
4.2非線性數(shù)據(jù)結(jié)構(gòu)
4.3元組
4.3.1定義
4.3.2元組的訪問(wèn)
4.3.3修改tuple變量
4.4集合
4.4.1定義
4.4.2集合的基本操作
4.5字典
4.5.1定義
4.5.2字典的基本操作
4.6【小白也要懂】生成器
4.7迭代器
4.8【實(shí)戰(zhàn)】編寫一些有趣的代碼
4.8.1走馬燈文字
4.8.2楊輝三角
4.8.3初識(shí)排序
4.9【大牛講壇】算法進(jìn)階,字典和集合背后的秘密
4.9.1哈希表插入數(shù)據(jù)
4.9.2哈希表查找數(shù)據(jù)
4.9.3哈希表刪除數(shù)據(jù)
第5章函數(shù)
5.1什么是函數(shù)
5.1.1定義函數(shù)
5.1.2實(shí)參和形參
5.1.3返回值
5.2實(shí)參與形參之間的傳遞方式
5.2.1位置實(shí)參
5.2.2關(guān)鍵字參數(shù)
5.2.3默認(rèn)參數(shù)
5.2.4可變參數(shù)
5.3局部變量和全局變量
5.4遞歸函數(shù)
5.5閉包
5.6【小白也要懂】函數(shù)與函數(shù)式編程的區(qū)別
5.7【實(shí)戰(zhàn)】用Python來(lái)做數(shù)學(xué)題
5.7.1公約數(shù)和公倍數(shù)
5.7.2回文數(shù)
5.7.3素?cái)?shù)
5.8【大牛講壇】函數(shù)編程指南
第6章模塊、包和文件
6.1模塊
6.1.1什么是模塊
6.1.2模塊的導(dǎo)入
6.2包
6.2.1目錄結(jié)構(gòu)
6.2.2包的導(dǎo)入
6.3文件
6.3.1文件操作介紹
6.3.2文件的相關(guān)函數(shù)
6.4【小白也要懂】用json模塊存儲(chǔ)數(shù)據(jù)
6.5【實(shí)戰(zhàn)】文件讀寫的具體應(yīng)用
6.5.1讀寫文本數(shù)據(jù)
6.5.2打印輸出至文件中
6.5.3讀寫二進(jìn)制字節(jié)數(shù)據(jù)
6.5.4字符串的I/O操作
6.5.5讀寫壓縮文件
6.5.6內(nèi)存映射的二進(jìn)制文件
6.6【大牛講壇】大數(shù)據(jù)時(shí)代,數(shù)據(jù)組織維度
6.6.1一維數(shù)據(jù)
6.6.2二維數(shù)據(jù)
6.6.3多維數(shù)據(jù)
第7章錯(cuò)誤、異常和調(diào)試
7.1語(yǔ)法錯(cuò)誤
7.2運(yùn)行時(shí)錯(cuò)誤
7.3異常處理
7.3.1異常
7.3.2捕捉異常
7.3.3拋出異常
7.4測(cè)試
7.4.1測(cè)試基礎(chǔ)
7.4.2文檔測(cè)試
7.4.3單元測(cè)試
7.5【小白也要懂】源代碼檢查和性能分析
7.5.1使用PyChecker和PyLint檢查源代碼
7.5.2性能分析
7.6【實(shí)戰(zhàn)】Python日志調(diào)試實(shí)踐
7.7【大牛講壇】調(diào)試程序思路
7.7.1標(biāo)準(zhǔn)庫(kù)的pdb
7.7.2開(kāi)源的ipdb
進(jìn)階篇
第8章面向?qū)ο缶幊?br>8.1類和對(duì)象
8.1.1類的定義
8.1.2對(duì)象實(shí)例化
8.1.3對(duì)象的方法
8.1.4類的變量
8.2面向?qū)ο缶幊痰娜筇匦?br>8.2.1繼承
8.2.2多態(tài)
8.2.3封裝
8.3特殊方法和屬性
8.3.1_dict_
8.3.2_slots_
8.4【小白也要懂】靜態(tài)方法和類方法
8.5【實(shí)戰(zhàn)】面向?qū)ο缶幊?br>實(shí)操
8.6【大牛講壇】對(duì)象的內(nèi)存管理
第9章進(jìn)程和線程
9.1線程和進(jìn)程的概念
9.1.1什么是多進(jìn)程
9.1.2什么是多線程
9.2【小白也要懂】多進(jìn)程與多線程
9.3多進(jìn)程實(shí)踐
9.3.1multiprocessing模塊
9.3.2進(jìn)程池
9.3.3進(jìn)程間通信
9.4并行開(kāi)發(fā)的高級(jí)特性
9.4.1GIL
9.4.2threading模塊
9.4.3queue模塊
9.4.4鎖
9.5并發(fā)編程分類
9.6【實(shí)戰(zhàn)】手把手教你創(chuàng)建自己的線程池
9.7【大牛講壇】實(shí)現(xiàn)消息發(fā)布/訂閱模型
第10章網(wǎng)絡(luò)編程
10.1【小白也要懂】網(wǎng)絡(luò)基礎(chǔ)
10.1.1TCP/IP
10.1.2端口
10.1.3IP地址
10.1.4UDP協(xié)議
10.2socket網(wǎng)絡(luò)編程
10.2.1socket模塊簡(jiǎn)介
10.2.2客戶端/服務(wù)器編碼
10.2.3基于TCP/IP傳輸層協(xié)議的
socket套接字編程
10.2.4多個(gè)客戶端連接通信
10.2.5UDP通信
10.3【實(shí)戰(zhàn)】用Python發(fā)送短信和郵件
10.4【大牛講壇】談?wù)凴EST和RESTful
第11章Python數(shù)據(jù)處理和數(shù)據(jù)庫(kù)編程
11.1【小白要也要懂】大數(shù)據(jù)時(shí)代Python的優(yōu)勢(shì)
11.2數(shù)據(jù)編碼和處理
11.2.1讀寫CSV數(shù)據(jù)
11.2.2讀寫json數(shù)據(jù)
11.2.3解析簡(jiǎn)單的XML數(shù)據(jù)
11.2.4讀寫二進(jìn)制數(shù)據(jù)
11.3關(guān)系型數(shù)據(jù)庫(kù)
11.3.1關(guān)系型數(shù)據(jù)庫(kù)入門
11.3.2基本的數(shù)據(jù)庫(kù)SQL操作
11.4訪問(wèn)關(guān)系型數(shù)據(jù)庫(kù)
11.4.1使用SQLite
11.4.2使用MySQL
11.5對(duì)象關(guān)系映射
11.6【實(shí)戰(zhàn)】Python操作常用數(shù)據(jù)庫(kù)實(shí)踐
11.7【大牛講壇】常用數(shù)據(jù)庫(kù)優(yōu)缺點(diǎn)分析
應(yīng)用篇
第12章Web開(kāi)發(fā)應(yīng)用領(lǐng)域
12.1Web應(yīng)用工作原理
12.2Web客戶端
12.2.1urlparse模塊
12.2.2urllib模塊
12.3CGI介紹
12.3.1CGI模塊
12.3.2CGI配置和環(huán)境變量
12.3.3CGI腳本的使用和調(diào)試
12.4【小白也要懂】Web前端簡(jiǎn)介
12.5Tornado框架
12.5.1Tornado是什么
12.5.2Tornado安裝
12.5.3Hello Tornado
12.6Tornaado架構(gòu)
12.6.1Web的基本框架
12.6.2與數(shù)據(jù)庫(kù)的連接
12.6.3表單
12.6.4模板
12.7大用戶量訪問(wèn)的秘密
12.7.1Tornado同步
12.7.2Tornado異步
12.8【實(shí)戰(zhàn)】手把手教你創(chuàng)建Web聊天室
第13章圖形界面GUI和繪圖應(yīng)用領(lǐng)域
13.1Tkinter介紹
13.2Tkinter基礎(chǔ)知識(shí)
13.3組件介紹
13.3.1標(biāo)簽
13.3.2按鈕
13.3.3文本框
13.3.4下拉框
13.3.5選擇框
13.3.6菜單
13.4事件
13.5【實(shí)戰(zhàn)】手把手教你開(kāi)發(fā)貪吃蛇游戲
13.6Python繪圖領(lǐng)域應(yīng)用
13.6.1初級(jí)繪圖
13.6.2圖像、子圖、坐標(biāo)軸和記號(hào)
13.7【實(shí)戰(zhàn)】手把手教你畫圖
第14章科學(xué)計(jì)算與數(shù)據(jù)分析應(yīng)用領(lǐng)域
14.1為什么用Python進(jìn)行數(shù)據(jù)分析
14.2利器Anaconda
14.3NumPy是什么
14.3.1初窺NumPy
14.3.2數(shù)組
14.3.3數(shù)組元素的訪問(wèn)和操作
14.4SciPy概述
14.4.1SciPy子模塊介紹
14.4.2統(tǒng)計(jì)分布
14.5Pandas基本數(shù)據(jù)結(jié)構(gòu)
14.5.1Series
14.5.2DataFrame
14.5.3數(shù)據(jù)處理
14.5.4聚合和分組
14.6時(shí)間序列
14.7【實(shí)戰(zhàn)】手把手教你分析藥店銷售數(shù)據(jù)
14.7.1理解數(shù)據(jù)
14.7.2數(shù)據(jù)清洗
14.7.3缺失數(shù)據(jù)處理
14.7.4數(shù)據(jù)類型轉(zhuǎn)換
14.7.5數(shù)據(jù)排序
14.7.6異常值處理
14.7.7構(gòu)建模型
第15章深度學(xué)習(xí)應(yīng)用領(lǐng)域
15.1談?wù)剶?shù)學(xué)的重要性
15.2PyTorch是什么
15.3PyTorch基礎(chǔ)
15.3.1張量
15.3.2自動(dòng)求導(dǎo)
15.3.3神經(jīng)網(wǎng)絡(luò)
15.3.4訓(xùn)練分類器
第16章云計(jì)算和自動(dòng)化運(yùn)維應(yīng)用領(lǐng)域
16.1云計(jì)算時(shí)代
16.2大行其道的DevOps
16.3CMDB資產(chǎn)管理
16.4服務(wù)器監(jiān)控
16.4.1通過(guò)腳本監(jiān)控
16.4.2通過(guò)Psutil模塊監(jiān)控
16.4.3大型監(jiān)控方案
16.5配置管理工具
16.5.1Ansible介紹
16.5.2安裝和配置
16.5.3Adhoc命令
16.5.4Playbook用法
16.6持續(xù)交付