看漫畫學Python 有趣、有料、好玩、好用(全彩版)
作 者:關東昇 著 趙大羽 繪
出 版 社:電子工業出版社
出版日期:2020年06月01日
頁 數:254
裝 幀:平裝
ISBN:9787121388392
主編推薦
"看漫畫學Python,有趣、簡單! 提供配套視頻、定期答疑 小灰、大鬍子、臧秀濤等力贊! 關東昇、趙大羽新作"
目錄
●第1章油箱加滿!準備出發!
1.1Python的歷史
1.2Python的特點
1.3搭建Python開發環境
1.4動動手——編寫和運行一個HelloWorld程序
1.4.1交互方式
1.4.2文件方式
1.5一練
第2章編程基礎那點事
2.1標識符
2.2關鍵字
2.3變量
2.4語句
2.5代碼註釋
2.6模塊
2.7動動手——實現兩個模塊間的代碼元素訪問
2.8練一練
第3章數字類型的數據
3.1Python中的數據類型
3.2整數類型
3.3浮點類型
3.4複數類型
3.5布爾類型
3.6數字類型的相互轉換
3.6.1隱式類型的轉換
3.6.2顯式類型的轉換
3.7練一練
第4章運算符
4.1算術運算符
4.2比較運算符
4.3邏輯運算符
4.4位運算符
4.5賦值運算符
4.6運算符的優先級
4.7練一練
第5章程序流程控制
5.1分支語句
5.1.1if結構
5.1.2if-else結構
5.1.3if-elif-else結構
5.2循環語句
5.2.1while語句
5.2.2for語句
5.3跳轉語句
5.3.1break語句
5.3.2continue語句
5.4動動手——計算水仙花數
5.5練一練
第6章容器類型的數據
6.1序列
6.1.1序列的索引操作
6.1.2加和乘操作
6.1.3切片操作
6.1.4成員測試
6.2列表
6.2.1創建列表
6.2.2追加元素
6.2.3插入元素
6.2.4替換元素
6.2.5刪除元素
6.3元組
6.3.1創建元組
6.3.2元組拆包
6.4集合
6.4.1創建集合
6.4.2修改集合
6.5字典
6.5.1創建字典
6.5.2修改字典
6.5.3訪問字典視圖
6.6動動手——遍歷字典
6.7練一練
第7章字符串
7.1字符串的表示方式
7.1.1普通字符串
7.1.2原始字符串
7.1.3長字符串
7.2字符串與數字的相互轉換
7.2.1將字符串轉換為數字
7.2.2將數字轉換為字符串
7.3格式化字符串
7.3.1使用佔位符
7.3.2格式化控制符
7.4操作字符串
7.4.1字符串查找
7.4.2字符串替換
7.4.3字符串分割
7.5動動手——統計英文文章中單詞出現的頻率
7.6練一練
第8章函數
8.1定義函數
8.2調用函數
8.2.1使用位置參數調用函數
8.2.2使用關鍵字參數調用函數
8.3參數的默認值
8.4可變參數
8.4.1基於元組的可變參數(*可變參數)
8.4.2基於字典的可變參數(**可變參數)
8.5函數中變量的作用域
8.6函數類型
8.6.1理解函數類型
8.6.2過濾函數filter()
8.6.3映射函數map()
8.7lambda()函數
8.8動動手——使用更多的lambda()函數
8.9練一練
第9章類與對象
9.1面向對象
9.2定義類
9.3創建對象
9.4類的成員
9.4.1實例變量
9.4.2構造方法
9.4.3實例方法
9.4.4類變量
9.4.5類方法
9.5封裝性
9.5.1私有變量
9.5.2私有方法
9.5.3使用屬性
9.6繼承性
9.6.1Python中的繼承
9.6.2多繼承
9.6.3方法重寫
9.7多態性
9.7.1繼承與多態
9.7.2鴨子類型測試與多態
9.8練一練
第10章異常處理
10.1第一個異常——除零異常
10.2捕獲異常
10.2.1try-except語句
10.2.2多個except代碼塊
10.2.3多重異常捕獲
10.2.4try-except語句嵌套
10.3使用finally代碼塊釋放資源
10.4自定義異常類
10.5動動手——手動引發異常
10.6練一練
第11章常用的內置模塊
11.1數學計算模塊——math
11.2日期時間模塊——datetime
11.2.1datetime類
11.2.2date類
11.2.3time類
11.2.4計算時間跨度類——timedelta
11.2.5將日期時間與字符串相互轉換
11.3正則表達式模塊——re
11.3.1字符串匹配
11.3.2字符串查找
11.3.3字符串替換
11.3.4字符串分割
11.4點撥點撥——如何使用官方文檔查找模塊幫助信息
11.5練一練
第12章文件讀寫
12.1打開文件
12.2關閉文件
12.2.1在finally代碼塊中關閉文件
12.2.2在withas代碼塊中關閉文件
12.3讀寫文本文件
12.4動動手——複製文本文件
12.5讀寫二進製文件
12.6動動手——複製二進製文件
12.7練一練
第13章圖形用戶界面
13.1Python中的圖形用戶界面開發庫
13.2安裝wxPython
13.3第一個wxPython程序
13.4自定義窗口類
13.5在窗口中添加控件
13.6事件處理
13.7佈局管理
13.7.1盒子佈局管理器
13.7.2動動手——重構事件處理示例
13.7.3動動手——盒子佈局管理器嵌套示例
13.8控件
13.8.1文本輸入控件
13.8.2複選框和單選按鈕
13.8.3列表
13.8.4靜態圖片控件
13.9點撥點撥——如何使用wxPython官方文檔
13.10練一練
第14章網絡通信
14.1基本的網絡知識
14.1.1TCP/IP
14.1.2IP地址
14.1.3端口
14.1.4HTTP/HTTPS
14.2搭建自己的Web服務器
14.3urllib.request模塊
14.3.1發送GET請求
14.3.2發送POST請求
14.4JSON數據
14.4.1JSON文檔的結構
14.4.2JSON數據的解碼
14.5動動手—— 圖片示例
14.6動動手——返回所有備忘錄信息
14.7練一練
第15章訪問數據庫
15.1SQLite數據庫
15.1.1SQLite數據類型
15.1.2Python數據類型與SQLite數據類型的映射
15.1.3使用GUI管理工具管理SQLite數據庫
15.2數據庫編程的基本操作過程
15.3sqlite3模塊API
15.3.1數據庫連接對象Connection
15.3.2游標對象Cursor
15.4動動手——數據庫的CRUD操作示例
15.4.1示例中的數據表
15.4.2無條件查詢
15.4.3有條件查詢
15.4.4插入數據
15.4.5更新數據
15.4.6刪除數據
15.5點撥點撥——防止SQL注入攻擊
15.6練一練
第16章多線程
16.1線程相關的知識
16.1.1進程
16.1.2線程
16.1.3主線程
16.2線程模塊——threading
16.3創建子線程
16.3.1自定義函數實現線程體
16.3.2自定義線程類實現線程體
16.4線程管理
16.4.1等待線程結束
16.4.2線程停止
16.5動動手—— 圖片示例
16.6練一練
附錄
“練一練”參考答案
內容簡介
Python是一門既簡單又強大的編程語言,被廣泛應用於數據分析、大數據、網絡爬蟲、自動化運維、科學計算和人工智能等領域。 Python也越來越重要,成為國家計算機等級考試科目,某些中小學也開設了Python編程課程。本書秉承有趣、有料、好玩、好用的理念,通過3個漫畫人物的輕鬆對話、搞笑形象及誇張動作,把複雜的Python技術問題簡單化。
《看漫畫學Python:有趣、有料、好玩、好用(全彩版)》總計16章:第1章介紹Python的歷史和特點,並進行開發環境搭建。第2~5章介紹Python的基礎知識,包括數據類型、表達式、流程控制等。第6~7章介紹Python常用的容器類型數據和字符串數據。第8~11章介紹Python的進階內容,包括函數、類與對象、異常處理、常用內置模塊等。第12~16章介紹Python實用庫的使用方法,包括文件讀寫、圖形用戶界面、網絡通信、數據庫訪問和多線程等。 ......
作者簡介
關東昇 著 趙大羽 繪
關東昇一個在IT領域摸爬滾打20多年的老程序員、軟件架構師、高級培訓講師、IT作家。熟悉Java、Kotlin、Python、iOS、Android、遊戲開發、數據庫開發與設計、軟件架構設計等多種IT技術。參與設計和開發北京市公交一卡通百億級大型項目,開發國家農產品追溯系統、金融系統微博等移動客戶端項目。近期為中國移動、中國聯通、南方航空、中國石油、工商銀行、平安銀行和天津港務局等企事業單位授課。著有《Java從小白到大牛》《Kotlin從小白到大牛》《Python從小白到大牛》等40多部計算機書籍。
看漫畫學Python 有趣、有料、好玩、好用 2(全彩進階版
作 者:關東昇 著 趙大羽 繪
出 版 社:電子工業出版社
出版日期:2022年07月01日
頁 數:304
裝 幀:平裝
ISBN:9787121436666
主編推薦
《看漫畫學Python》進階版,基於第1版講解Python進階知識—— 應本書第1版《看漫畫學Python》近10萬讀者的呼聲,我們細心編寫本書。本書是《看漫畫學Python》的進階版本,在第1版的基礎上講解Python進階知識,幫助讀者完善Python知識體系,提升Python技能。。 ——2. 繼續秉承有趣、有料、好玩、好用的理念—— 本書繼續秉承有趣、有料、好玩、好用的理念,並繼續採用《看漫畫學Python》一書中3個不同的漫畫人物角色,通過這3個角色之間的輕鬆對話把複雜......
目錄
●第1章 工欲善其事,必先利其器/1
1.1 IDE工具那些事兒/1
1.2 “一統江湖” 的PyCharm/2
1.2.1 與安裝/3
1.2.2 根據使用偏好對 PyCharm 進行設置/6
1.2.3 只要你願意,就可以不用鼠標——使用快捷鍵/8
1.2.4 設置 Python 解釋器/10
1.2.5 創建 PyCharm 項目/12
1.2.6 創建 Python 源碼文件/13
1.2.7 運行程序/14
1.2.8 打開 PyCharm 項目/15
1.3 PyCharm的誘人功能/16
1.4 調試程序不求人! ——PyCharm的調試功能/20
1.5 知識點撥/24
1.6 動手實踐/26
第2章 讓我們從海龜開始/27
2.1 Turtle那些事兒/27
2.1.1 Turtle 中的基本概念/28
2.1.2 動動手——使用 Turtle 繪製一個矩形/28
2.1.3 改變畫筆/30
2.1.4 設置畫筆/31
2.1.5 填充顏色/32
2.2 繪製基本圖形/33
2.2.1 繪製五角星/33
2.2.2 繪製圓形和弧線/34
2.3 動手實踐1:繪製奧運五環/35
2.4 動手實踐2:好漂亮的一棵樹/37
2.5 動手實踐3/40
第3章 進階的GUI庫/41
3.1 為什麼選擇PyQt/41
3.2 PyQt的基礎知識/42
3.2.1 安裝 PyQt5/42
3.2.2 PyQt GUI 主要類的層次結構/43
3.2.3 編寫你的第 1 個 PyQt GUI 程序/44
3.2.4 以面向對象方式實現 PyQt GUI 程序/45
3.3 在窗口中添加控件/47
3.4 處理事件/48
3.4.1 信號與槽/48
3.4.2 鼠標事件/51
3.4.3 鍵盤事件/54
3.5 佈局管理/56
3.5.1 盒子佈局管理器——QBoxLayout/56
3.5.2 網格佈局管理器——QGridLayout/60
3.5.3 表單佈局管理器——QFormLayout/62
3.6 常用控件/64
3.6.1 文本輸入控件/65
3.6.2 單選按鈕/66
3.6.3 複選框/69
3.6.4 列表控件/71
3.6.5 下拉列表控件/73
3.7 表格控件/74
3.7.1 使用表格控件/74
3.7.2 表格事件處理/78
3.8 強大的界面設計工具——QTDesigner/79
3.8.1 安裝 QTDesigner/80
3.8.2 示例:登錄界面/82
3.9 動手實踐:“你是哪兒的人?” /86
第4章 文本分析/87
4.1 分詞庫/87
4.1.1 中文分詞庫——jieba 庫/88
4.1.2 安裝 jieba 庫/88
4.1.3 使用 jieba 庫/89
4.1.4 動手實踐:《水滸傳》詞頻分析/91
4.2 詞云庫——wordcloud庫/94
4.2.1 安裝 wordcloud 庫/95
4.2.2 使用 wordcloud 庫/98
4.2.3 動手實踐:通過詞云對《水滸傳》進行詞頻分析/102
4.3 綜合實踐: 在GUI界面打開圖片/103
第5章 計算機視覺處理那些事兒/105
5.1 OpenCV庫的基礎知識/105
5.1.1 安裝 OpenCV 庫/106
5.1.2 讀取和顯示圖像/106
5.1.3 調整圖像的大小/109
5.1.4 圖像旋轉/110
5.2 處理圖像/112
5.2.1 圖像灰度化/112
5.2.2 圖像二值化/114
5.3 人臉檢測/115
5.4 動手實踐1:識別登錄驗證碼/117
5.4.1 驗證碼識別/117
5.4.2 安裝 OCR 引擎 Tesseract/118
5.4.3 安裝 pytesseract 庫/118
5.4.4 驗證碼識別的代碼實現/120
5.5 動手實踐2:在GUI界面顯示OpenCV庫的圖像/121
第6章 讓“蜘蛛”幫我們工作/123
6.1 網絡爬蟲的過程/124
6.1.1 “蟲子”的第 1 階段工作——爬取數據/125
6.1.2 “蟲子”的第 2 階段工作——解析數據/126
6.1.3 “蟲子”的第 3 階段工作—— 圖片/130
6.2 爬取 *態網頁數據/133
6.2.1 使用瀏覽器的 Web 開發者工具/134
6.2.2 使用 Selenium 模擬 Web 瀏覽器爬取數據/136
6.3 動手實踐1:爬取股票數據/139
6.4 動手實踐2:將股票數據存儲到CSV文件中/142
6.5 動手實踐3:在GUI界面顯示股票數據/145
第7章 進階的數據存儲/148
7.1 MySQL的基礎知識/148
7.1.1 安裝 MySQL8/149
7.1.2 通過命令提示符窗口登錄 MySQL 服務器/153
7.1.3 常見的管理命令/154
7.1.4 使用 GUI 工具管理數據庫/157
7.2 使用Python訪問MySQL/163
7.2.1 安裝 PyMySQL 庫/164
7.2.2 訪問 MySQL 的流程/164
7.3 動手實踐1:對學生表進行CRUD操作/166
7.3.1 創建學生表/167
7.3.2 插入數據/167
7.3.3 查詢數據/170
7.3.4 對查詢返回多條數據/172
7.4 動手實踐2:完成數據的更新和刪除操作/174
第8章 讓我們一起交換數據! /175
8.1 數據交換格式/176
8.2 XML數據交換格式/176
8.2.1 XML 文檔的結構/177
8.2.2 解析 XML 文檔/178
8.2.3 使用 ElementTree 庫解析 XML 文檔/179
8.3 動手實踐1:解析Notes.xml文檔/179
8.4 動手實踐2:使用XPath表達解析Notes.xml文檔/181
8.5 動手實踐3:在GUI界面顯示備忘錄信息/185
第9章 訪問Excel文件/190
9.1 訪問Excel文件/190
9.1.1 安裝 xlwings 庫/191
9.1.2 xlwings 庫中的對象/191
9.2 讀取單元格數據/192
9.3 寫入單元格數據/194
9.4 動手實踐1:將股票數據保存到Excel文件中/197
9.5 動手實踐2:把多隻股票的數據保存到一個Excel文件中/199
第10章 數據可視化/200
10.1 使用pyecharts庫/201
10.1.1 安裝 pyecharts 庫/201
10.1.2 第 1 個 pyecharts 圖表/202
10.1.3 使用鍊式 API/204
10.1.4 設置圖表/205
10.2 基本圖表/208
10.2.1 繪製折線圖/208
10.2.2 繪製面積圖/209
10.2.3 繪製餅狀圖/211
10.2.4 繪製環狀圖/214
10.3 3D柱狀圖/215
10.4 動手實踐: 使用堆疊面積圖展示近10年全國總人口
變化情況/218
第11章 項目實戰 1/222
11.1 項目概述/222
11.2 需求分析/223
11.3 系統設計/224
11.3.1 原型設計/224
11.3.2 數據庫設計/225
11.3.3 架構設計/227
11.3.4 詳細設計/228
11.4 項目編碼實現/230
11.4.1 數據庫初始化/230
11.4.2 創建項目/230
11.5 編寫數據持久層/232
11.5.1 配置數據庫/232
11.5.2 DAO 基類/233
11.5.3 用戶管理 DAO/234
11.5.4 商品管理 DAO/235
11.6 編寫表示層/239
11.6.1 編寫啟動模塊/239
11.6.2 編寫用戶登錄窗口/242
11.6.3 編寫商品列表窗口/243
11.7 再完善一下/252
第12章 項目實戰 2/253
12.1 Python遊戲引擎——PyGame/253
12.1.1 什麼是遊戲引擎? /253
12.1.2 安裝 PyGame 庫/254
12.1.3 PyGame 遊戲程序的模板/254
12.1.4 在你的遊戲場景中繪製圖片/257
12.1.5 在你的遊戲場景中繪製文字/260
12.2 讓我們走進“精靈”的世界/264
12.2.1 精靈類/264
12.2.2 將精靈添加到遊戲場景中/265
12.2.3 響應鍵盤事件/268
12.2.4 遊戲中的聲音/272
12.3 迷失航線遊戲分析與設計/277
12.3.1 遊戲的故事背景/277
12.3.2 需求分析/277
12.3.3 遊戲腳本/278
12.4 項目編碼實現/279
12.4.1 創建項目/279
12.4.2 創建敵人/280
12.4.3 創建玩家精靈/285
12.4.4 創建子彈精靈/286
12.4.5 創建爆炸精靈/287
12.4.6 遊戲場景的實現/289
內容簡介
本書是《看漫畫學Python》的進階版本,繼續秉承有趣、有料、好玩、好用的理念,並繼續採用《看漫畫學Python》一書中3個不同的漫畫人物角色,通過這3個角色之間的輕鬆對話把複雜的技術問題簡單化。本書總計12章。第1章講解Python的IDE工具PyCharm的基礎知識、高級功能和調試功能;第2章講解如何用Python繪圖庫Turtle繪製基本圖形;第3章講解Python的Qt庫PyQt的基礎知識和用法;第4章講解如何用分詞庫實現分詞,以及如何用詞雲庫形成詞雲;第5章講解如何用OpenCV庫實現圖像處理和人臉檢測;第6章講解網絡爬蟲技術;第7章講解如何用Python訪問MySQL;第8章講解如何用Python解析XML文檔;第9章講解如何用xlwings庫操作Excel文件;第10章講解如何用pyecharts庫進行數據可視化。第11~ 12章通過兩個項目實戰幫助讀者將前10章所學的內容融......