本書基于Python語言對計算機(jī)程序設(shè)計相關(guān)知識,進(jìn)行了系統(tǒng)而全面的介紹。全書包含大量實用且有趣的程序代碼,非常適合新手入門。
書共有16章,1~9章為基礎(chǔ)知識,其中詳細(xì)講解了Python的主要語法,讀者學(xué)完這些章節(jié)將充分掌握Python語言的運(yùn)作方式,能獨立編寫程序解決實際問題;10~13章為進(jìn)階部分,其中介紹了更多的Python高級概念,讀者學(xué)完這些章節(jié)將全面熟悉Python語言的進(jìn)階技巧,能更靈活地發(fā)揮Python語言專有的特點;14~16章為綜合實例,其中涵蓋了Python的四個主要應(yīng)用領(lǐng)域,讀者學(xué)完這些章節(jié)將深入了解整個Python軟件生態(tài),做好選擇下一步發(fā)展方向的準(zhǔn)備。
只講重點:本書講解了Python語言編程最關(guān)鍵的143個知識點,并注意圍繞新手容易遭遇的問題進(jìn)行針對性說明,語言精煉絕無廢話。
實例眾多:充分發(fā)揮Python語言交互式編程環(huán)境的特色,對于每個章節(jié)的理論知識內(nèi)容都提供了實踐操作環(huán)節(jié),對于每個知識點都給出了交互模式下的典型示例代碼,對于每個主題都提供了完整的編程實例文件,邊學(xué)邊練習(xí)。
尹志 寧波工程學(xué)院統(tǒng)計學(xué)院副教授,畢業(yè)于華東師范大學(xué),博士研究生,長期從事Python的科研和教學(xué)工作。研究方向為機(jī)器學(xué)習(xí)。
第 1章 Python簡明介紹
1.1 Python語言概述
1.1.1 Python的誕生與發(fā)展歷程
1.1.2 Python的特點與應(yīng)用領(lǐng)域
1.1.3 Python的版本與平臺選擇
1.2 Python軟件安裝
1.2.1 安裝Python官方發(fā)行版
1.2.2 編程環(huán)境的檢查
1.2.3 安裝與運(yùn)行問題的解決
1.3 Python程序運(yùn)行
1.3.1 集成開發(fā)環(huán)境
1.3.2 第 一個程序文件
1.3.3 程序運(yùn)行模式
思考題
習(xí)題
第 2章 基礎(chǔ)語法
2.1 表達(dá)式與對象
2.1.1 表達(dá)式的使用
2.1.2 對象與變量
2.2 函數(shù)基本概念
2.2.1 函數(shù)的使用
2.2.2 常用內(nèi)置函數(shù)
實例2-1 簡單的計算器
2.3 基本數(shù)據(jù)類型
2.3.1 數(shù)字類型
2.3.2 字符串類型
實例2-2 整數(shù)反轉(zhuǎn)
思考題
習(xí)題
第3章 模塊與庫
3.1 Python的模塊
3.1.1 模塊的概念
3.1.2 導(dǎo)入更多模塊
實例3-1 自定義模塊
3.2 Python標(biāo)準(zhǔn)庫
3.2.1 常用標(biāo)準(zhǔn)庫模塊
3.2.2 Python之禪
實例3-2 陰陽圖案
3.3 第三方包
3.3.1 安裝第三方包
3.3.2 IPython的使用
3.3.3 Spyder的使用
思考題
習(xí)題
第4章 流程控制
4.1 流程結(jié)構(gòu)與邏輯判斷
4.1.1 流程結(jié)構(gòu)的分類
4.1.2 布爾表達(dá)式
4.1.3 布爾類型的本質(zhì)
4.2 分支結(jié)構(gòu)
4.2.1 單分支結(jié)構(gòu)
4.2.2 多分支結(jié)構(gòu)
實例4-1 猜數(shù)游戲
4.3 循環(huán)結(jié)構(gòu)
4.3.1 while語句
實例4-2 多芒星圖案
實例4-3 猜數(shù)游戲第二版
4.3.2 for語句
實例4-4 彩色螺旋圖案
實例4-5 猜數(shù)游戲第三版
思考題
習(xí)題
第5章 自定義函數(shù)
5.1 基本函數(shù)定義
5.1.1 def語句
5.1.2 lambda表達(dá)式
5.1.3 作用域
實例5-1 隨機(jī)五角星
5.2 函數(shù)進(jìn)階概念
5.2.1 類型標(biāo)注
5.2.2 參數(shù)打包
5.2.3 遞歸調(diào)用
實例5-2 快速排序
5.3 函數(shù)高級特性
5.3.1 高階函數(shù)
5.3.2 裝飾器
5.3.3 系統(tǒng)命令
實例5-3 文本加密
思考題
習(xí)題
第6章 序列類型
6.1 列表類型
6.1.1 列表作為一般序列
6.1.2 列表作為可變序列
6.1.3 列表的其他操作
實例6-1 數(shù)字列表排序
6.2 元組類型
6.2.1 元組的構(gòu)建
6.2.2 元組的使用
實例6-2 銀行列表排序
實例6-3 顏色名稱展示
思考題
習(xí)題
第7章 映射與集合
7.1 字典類型
7.1.1 字典的構(gòu)建
7.1.2 字典專屬操作
7.1.3 字典推導(dǎo)式
實例7-1 字符統(tǒng)計
7.2 集合類型
7.2.1 普通集合set
7.2.2 凍結(jié)集合frozenset
實例7-2 數(shù)字組合
實例7-3 繪制分形植物
思考題
習(xí)題
第8章 文件與目錄
8.1 文件的使用
8.1.1 文件讀寫操作
8.1.2 字節(jié)與數(shù)據(jù)編碼
8.1.3 對象的序列化
實例8-1 繪制勾股樹并保存文件
8.2 目錄操作
8.2.1 管理目錄與文件
8.2.2 遍歷目錄樹
實例8-2 關(guān)鍵字統(tǒng)計
8.3 模式匹配
8.3.1 正則表達(dá)式
8.3.2 使用re模塊
實例8-3 單詞統(tǒng)計
思考題
習(xí)題
第9章 圖形用戶界面
9.1 GUI工具包tkinter
9.1.1 GUI與tkinter
9.1.2 窗口布局
9.1.3 事件處理
實例9-1 簡易記事本
9.2 圖形與圖像
9.2.1 畫布繪圖
9.2.2 創(chuàng)建動畫
實例9-2 方塊螺旋圖案
實例9-3 圖片查看器
9.3 多窗口管理
9.3.1 Toplevel部件
9.3.2 多窗口的切換
實例9-4 實用工具集
思考題
習(xí)題
第 10章 面向?qū)ο缶幊?
10.1 自定義類
10.1.1 類定義語句
10.1.2 類的層級結(jié)構(gòu)
10.1.3 特征屬性
實例10-1 桌面計算器
10.2 類的高級特性
10.2.1 類方法與靜態(tài)方法
實例10-2 繪制不對稱勾股樹
10.2.2 迭代器與生成器
實例10-3 曼德布羅分形圖
思考題
習(xí)題
第 11章 可靠性設(shè)計
11.1 錯誤與異常
11.1.1 錯誤的類型
11.1.2 異常處理語句
11.1.3 可靠性設(shè)計風(fēng)格的選擇
實例11-1 隨機(jī)獲取圖片
11.2 代碼測試
11.2.1 文檔測試模塊doctest
11.2.2 單元測試模塊unittest
11.2.3 性能分析模塊cProfile/profile
實例11-2 批量下載圖片
思考題
習(xí)題
第 12章 任務(wù)調(diào)度
12.1 時間操作
12.1.1 時間模塊time
12.1.2 日期時間模塊datetime
實例12-1 定時批量下載圖片
實例12-2 整點提醒
12.2 多任務(wù)處理
12.2.1 進(jìn)程的使用
12.2.2 線程的使用
12.2.3 協(xié)程的使用
實例12-3 并發(fā)版定時批量下載圖片
思考題
習(xí)題
第 13章 環(huán)境管理
13.1 多環(huán)境配置
13.1.1 安裝版環(huán)境
13.1.2 虛擬環(huán)境
實例13-1 貪吃蛇小游戲
13.2 生產(chǎn)環(huán)境
13.2.1 配置生產(chǎn)環(huán)境
13.2.2 使用生產(chǎn)環(huán)境
實例13-2 項目進(jìn)度通知
13.3 底層環(huán)境
13.3.1 Python與C語言
13.3.2 Python與C++語言
13.3.3 使用C/C++編寫Python模塊
思考題
習(xí)題
第 14章 綜合實例:新版圖片查看器
14.1 實現(xiàn)主要功能
14.1.1 PyQt5應(yīng)用程序框架
14.1.2 Git源代碼管理
14.1.3 原有代碼的改進(jìn)
14.2 添加新的組件
14.2.1 多圖片顯示模塊
14.2.2 窗體切換與消息傳遞
14.2.3 自定義可視化部件
思考題
習(xí)題
第 15章 綜合實例:文章采集與展示
15.1 在線文章采集
15.1.1 PySpider框架
15.1.2 編寫爬蟲代碼
15.1.3 爬蟲定制技巧
15.2 文章信息展示
15.2.1 Flask框架
15.2.2 后端和前端代碼
15.2.3 分頁功能的實現(xiàn)
思考題
習(xí)題
第 16章 綜合實例:數(shù)據(jù)分析與可視化
16.1 數(shù)據(jù)處理與分析
16.1.1 在線開發(fā)環(huán)境
16.1.2 數(shù)據(jù)科學(xué)工具集
16.1.3 使用數(shù)據(jù)分析庫
16.2 數(shù)據(jù)可視化
16.2.1 二維繪圖
16.2.2 詞云圖
16.2.3 時間序列可視化
思考題
習(xí)題
附錄A:Python關(guān)鍵字索引
附錄B:Python內(nèi)置函數(shù)索引
附錄C:Python標(biāo)準(zhǔn)庫常用模塊索引