
作者:趙英傑
出版社:旗標科技股份有限公司
出版日期:2025年10月22日
頁數:736頁(索引PDF檔、電子書不計入頁數),雙色印刷。
定價:NT$799
《超圖解Python程式設計入門》第一版的介紹與討論,請參閱這篇貼文。
補充文件
- 賦予樹莓派(Raspberry Pi 5)AI超能力(一):開箱Raspberry Pi AI人工智慧套件
- 賦予樹莓派(Raspberry Pi 5)AI超能力(二):安裝Hailo AI加速器的程式開發套件
- OrangePi(香橙派)5 Max(二):從VS Code遠端SSH連線、開發Python程式
- OrangePi(香橙派)5 Max(三):YOLO視覺物件偵測 + PT(PyTorch)模型轉換成RKNN格式說明
本書特色
- 快速入門瞭解基礎語法
- 從實戰範例應用邊做邊學
- 實作檔案備份工具、YouTube影片下載工具、網路爬蟲、資料庫與留言板、影像辨識、物體偵測、肢體動作、RAG應用、LINE聊天機器人
- 涵蓋Flask與Streamlit網頁應用框架、OpenCV程式庫、YOLO模型、LangChain框架等延伸套件
- 搭配Ollama設計本地端LLM應用
Python是Guido Van Rossum(吉多‧范羅蘇姆)在90年代初期設計出的程式語言,如今是最常用的程式設計語言之一,更是AI人工智慧應用開發的首選,舉凡Google、微軟、Amazon、Meta、Tesla(特斯拉)、OpenAI、NASA等大型企業和組織也青睞採用Python開發各種工具。Python的語法簡潔易讀,是少數既適合程式初學入門,且廣泛用於大數據處理∕AI等高階科學計算應用,也能在拇指大小的微電腦控制板運作的全領域、通用型程式語言,功能超乎想像地強大。
本書以圖解、實作為出發點,除了第2章的Python程式開發與AI輔助工具說明,每個章節都有實例與詳細圖解,帶領讀者學習Python程式設計以及相關領域的背景知識,例如:
- 網路爬蟲:自動擷取∕收集網路資訊並存入Google試算表
- 建立留言板資料庫網站,並將網站部署到雲端空間。
- 影像處理與AI物件偵測:偵測人臉、分析肢體動作、檢測並計算影像中的特定物件的數量、辨識車牌號碼並自動修正辨識錯誤、追蹤物件移動軌跡 / 計算車流量。

- 使用Google提供的免費運算平台(Colab)訓練影像偵測模型,也就是教會電腦辨識與偵測影像中的特定物件。

- 在本機電腦離線執行大型語言模型(LLM),也就是建立如ChatGPT般的聊天機器人,以及可根據我們提供的補充知識(如:公司的產品資料或規範)回答問題的客服機器人。

在許多實作應用的場合,光是了解程式語法是不夠的,像建構網路應用程式,還需要具備網路、防火牆、資料庫系統、租用並在雲端空間部署應用程式…等,還有AI影像偵測及大型語言模型應用背後的類神經網路 / 深度學習、模式辨認、評估指標、量化、詞嵌入向量…等概念,本書也針對這些基礎做了全方位的說明。

某些Python入門書籍沒有觸及的部分,例如:物件導向程式設計,因為很重要,所以筆者也用幾個淺顯實用的案例圖解說明。

感謝旗標科技的黃昕暐先生,提供本書諸多專業建議,例如,調整內文編寫的順序、專有名詞翻譯以及建議使用的程式模組,並逐一測試每個範例程式,還有糾正內容與程式的錯誤、添加文字讓文章更通順、晚上和假日加班改稿…由衷感謝昕暐先生對本書的貢獻。筆者也依照這些想法和指正,逐一調整解說方式,讓圖文內容更清楚易懂。也謝謝台灣樹莓派(Raspberry Pi)的Sosorry先生,以及Orange Pi(香橙派)的Nova小姐和Steve先生,提供相關硬體設備。
《超圖解Python程式設計》章節大綱
第1章 認識Python程式語言
- 認識程式語言
- 使用Google Colab免費雲端服務開始編寫Python

- Python基本語法:資料型態、變數、函式與程式庫

- 編寫Markdown格式文件
第2章 在本機電腦安裝Python以及VS Code程式開發工具
- 在本機電腦安裝與設定Python程式的執行環境
- 安裝與設定VS Code程式開發工具
第3章 條件判斷程式
- 處理字串資料格式

- 改變程式運作流程的條件判斷敘述
第4章 列表、迴圈與自訂函式
- 使用列表類型變數把相關數值儲存在一起
- 透過迴圈反覆執行一段程式碼
- 用函式建立自創指令
- 操作列表資料

第5章 操作資料夾與文件:同步備份檔案
- 使用os程式庫瀏覽檔案資料夾、新增資料夾和新增檔案
- 使用shutil程式庫查詢磁碟容量及複製檔案
- 使用argparse套件處理命令參數
- 處理時間資料與比較檔案修改日期
- 在Windows, macOS和Linux系統平台直接執行Python程式
- 「可變」與「不可變」的資料類型和Tuple(元組)

第6章 安裝程式套件、Python虛擬環境以及下載YouTube影片
- 安裝Python程式套件
- 設置Python虛擬環境
- 在VS Code編輯器中啟動Python虛擬環境
- YouTube影音的Codec與下載視訊
- 使用try…except捕捉例外狀況
- 編寫YouTube影片下載程式

第7章 集合(set)、匿名函式與執行外部程序
- 認識集合(set)與雜湊(hash)
- lamba匿名函式
- 執行外部程式的subprocess模組
- 轉換與合併影音的ffmpeg程式

第8章 自動收集網路資訊的網路爬蟲
- 認識構成網頁的HTML和CSS基礎語法以及網頁結構
- 透過Selenium操控瀏覽器、擷取網頁內容、輸入表單欄位文字並提交表單。
- 使用XPath的相對路徑和絕對路徑語法選定HTML元素與HTML標籤屬性
- 認識查詢字串、處理URL編碼。
- 運用字典(dict)儲存結構化資料

第9章 儲存檔案:純文字檔、CSV檔與Google試算表
- 讀寫純文字檔案以及CSV格式檔案
- 認識與使用OAuth開放授權標準存取Google雲端試算表

第10章 建立自訂類別
- 認識集結功能(方法)和資料(屬性)的程式模組:自訂類別。
- 了解類別物件的方法與屬性的存取權限
- 認識與處理常見的資料交換格式:XML、JSON和Pickle。
第11章 使用Flask建置網站服務
- 認識網站伺服器和前端應用程式之間的HTTP通訊協定
- 使用Flask開發動態網站應用程式
- 認識與設定網站伺服器的IP位址和埠號
- 透過樣板引擎動態合成網頁
- 建立表單與處理網頁表單資料

第12章 佈署網站到雲端空間
- 透過代理伺服器讓外界存取在本機電腦運作的Python Flask網站
- 佈署Flask網站程式到免費的雲端平台
- 在Windows, macOS以及Linux系統的電腦上定時執行Python程式

第13章 多執行緒下載檔案以及規則表達式
- 使用HTTP前端通訊程式庫requests,取得網站資源與下載檔案。
- 使用lxml程式庫解析HTML,取出網頁中的資源位址。
- 認識描述檔案類型的MIME,並透過MIME篩選下載資源。
- 使用規則表達式(regular expression)從字串資料中驗證與篩選出特定文∕數字資料
- 搭配Selenium瀏覽與下載由JavaScript產生的動態內容
- 認識執行緒,採用多執行緒同時下載多個檔案。
- 使用match…case判斷匹配條件

第14章留言板網站應用程式
- 認識資料庫、採用SQLAlchemy程式庫連結與操作資料庫。
- 練習資料庫的基本操作:建立、讀取、更新和刪除。
- 建立留言板網頁與管理介面,讓管理人員在後台編輯與刪除留言。
- 產生與驗證密碼雜湊值,以防有心人士竊取密碼。
- 自訂Flask樣板過濾器(filter),轉換與格式化UTC(世界協調時)時間。
- 使用Cookie和Session幫助網站伺服器記住資料處理狀態
- 使用pathlib程式庫存取資料夾

第15章 影像處理、人臉偵測與辨識
- Python的基本影像處理與NumPy程式庫
- 使用OpenCV處理即時影像資料

- 使用「哈爾特徵分類器」偵測人臉

- 使用深度學習偵測物件

第16章 使用YOLO偵測物件
- 認識AI影像資料庫與Roboflow網站
- 認識高性能偵測影像物件的YOLO
- 使用YOLO進行視覺物件偵測

- 顯示偵測物件的中文名稱與置信度
- 計算偵測目標的數量
- 追蹤物件的移動軌跡

- 評估影像辨識模型好壞的幾個指標
- 偵測肢體動作
第17章 遷移訓練YOLO影像偵測模型
- 訓練影像偵測模型:以偵測車牌為例
- 在Google Colab雲端訓練客製化YOLO模型

- 將訓練和驗證的結果存入Google雲端硬碟
- 使用OCR文字辨識軟體讀取車牌號碼
- 建立可修正車牌辨識錯誤的程式

第18章 本地大語言模型:Ollama和LangChain
- 大語言模型(LLM)基本概念
- 在本機執行大語言模型

- 具備視覺能力的「多模態」模型
- 認識LangChain

- 建立提示詞模板
- 使用LCEL語法簡化提問敘述

- 建立訊息型提示詞
- 串流輸出語言模型的回應
第19章 使用Streamlit快速開發網頁應用程式
- Streamlit開發入門
- Streamlit的關鍵UI元件

- 下拉式選單與列表生成式
- 連續對話型聊天機器人

第20章 檢索增強生成(RAG)應用
- 認識檢索增強生成(RAG)
- 詞嵌入與向量式搜尋
- RAG系統的「資料準備與檢索」流程
- 使用向量資料庫儲存詞向量

- 查詢向量資料庫
- 分割文件讓大語言模型容易吸收
第21章 打造LINE客服聊天機器人
- 開發LINE bot聊天機器人程式
- 接收與解析LINE的訊息
- 結合Ollama的客服LINE聊天機器人
- 產生LINE的對話方塊、按鈕樣板與圖文選單。
- 使用LINE專屬通訊協定讀取本機的GPS位置
- 製作LINE線上報修聊天機器人,將報修資料存入Google試算表。

赵英杰老师,您好,恭喜您又出新书了!我们又有福了哈哈<3
非常感谢您的支持 🙂
恭喜今天新書出版,多年前有老師也有出版過一本《超圖解Python程式設計入門》,這本新書算是改版(第二版)嗎?兩者之間是否有比較主要的差異。謝謝
是的,本書相當於《超圖解Python程式設計入門》第二版,由於內容改寫、新增部分超過第一版的一半以上,因此調整書名。主要的差異如下:
根據新版Python與程式庫語法改寫,我也已經更新第一版的範例程式,請參閱這一篇貼文。
新增AI人工智慧、LLM大語言模型(使用Ollama和LangChain)、RAG(檢索增強生成)、Streamlit介面以及YOLO影像視覺偵測等應用範例。以處理即時影像資料的OpenCV為例,第一版佔8頁篇幅,新書則用28頁介紹其常用函式,以及OpenCV於人臉偵測和深度學習方面的應用。
第一版的人臉辨識應用,需搭配dlib工具程式,非直接使用OpenCV,因此這10頁左右的篇幅以電子書的形式附贈。
因應AI程式開發的需要,新增Google Colab實驗筆記程式開發環境、Markdown語法和YAML配置文件等說明。
刪除索引(改成PDF檔)以及操控硬體(微電腦控制板)相關內容,總計46頁,因為新增篇幅超乎預期,跟編輯討論過後,決定聚焦在「軟體」開發,讀者僅需具備個人電腦即可學習和實作。微電腦控制板整合應用的相關電子、硬體、控制方程式的背景知識和實作,留待後續的專門書籍討論。
謝謝您!
趙老師您好,這一本書第4-15頁的qa_2.py的範例檔在哪裡?我下載範例檔裡面沒有這個檔案,我有漏掉什麼嗎?
抱歉,正確檔名是 ch4_6.py,感謝糾正!
今天剛入手感覺內容很充實,與此同時另外兩本AI 的書疊加起來厚度跟您的python打平😃。真的很少有作者一直能更新並加入新的東西與時俱進,網頁資訊也會提醒讀者更新。喜歡實作課程,在除錯中學到不少東西。期待老師可以考慮撰寫Arduino Uno Q 謝謝您。
非常感謝您的支持!我應該會買一片Arduino UNO Q試試,以原廠Arduino Mega 2560 R3定價美金$49.90來說,Arduino UNO Q 2GB(16GB eMMC)定價$44元,並不貴,但我手邊已經有幾片樹莓派、香橙派和其他較不知名的ARM開發板,所以暫不考慮Arduino UNO Q。
另外,我覺得“Arduino UNO Q”這個命名有點怪。
Arduino原廠有不同系列產品,像MEGA / GIGA, MKR, Portenta, Opta…等。我認為Arduino UNO Q不該沿用“UNO”系列名稱,因為“UNO Q”是單板電腦(SBC,Single Board Computer),而“UNO R3 / R4”是微電腦控制板(Microcontroller board),兩者的應用場域、效能、功耗…等,截然不同,以“UNO Q”命名會讓人以為它是UNO R4的下一代開發板。