序
這本書的第1和2版皆曾經榮登博客來、Momo、天瓏暢銷排行榜第1名,相較於第2版,第3版新增內容可以分成語法/ 模組功能加強與未來潛在應用。
□ 語法與模組功能加強
● 最新 Python 語法精神、效能發揮極致
● 增加 2D 和 3D 動畫
● 傳送、接收與分析電子郵件
● 發送會員信件與未繳會費的會員信件
● 多執行緒的應用 - 網路爬蟲、下載 YouTube 影片
● ffmpeg 支援影音檔案轉換
● 不同語言的文字、語音翻譯
● 股市數據分析,繪製與計算股票買賣點
● 設計 ChatGPT 線上客服機器人與 Emoji 翻譯程式
● 搭配 ChatGPT 設計 Line Bot 機器人
● 增加與修訂約 120 多個實例,其他修訂小細節約 100 處
□ 未來潛在應用
● 基礎語法應用:科學計算與模擬、機器學習與人工智慧、建立事件處理程式、航空公司飛行路線查詢。
● 物件導向:商品庫存類別、車輛類別、學生類別。
● 隨機數模組:隨機且公平的廣告信件發送、產品品質控制。
● 時間模組:日誌時間戳記錄、資料庫定期備份。
● 檔案管理:自動備份系統設計、記錄活動日誌。
● 程式除錯與異常處理:資料庫操作異常處理、網路請求驗證模擬。
● 正則表達式:認證與格式化信用卡號碼、批次調整圖像格式。
● 影像處理:批次調整網路圖像、自動生成產品圖像。
● GUI設計:數據監控儀表板、報告生成器。
● 詞雲:客戶評論詞雲、產品特點詞雲。
● json:客戶、庫存、員工紀錄、銷售數據的應用。
● csv:銷售數據、庫存、財報分析的應用。
● shelve模組:用戶環境設定儲存、會話數據儲存、玩家遊戲數據保存。
● 網路爬蟲:市場研究、社交媒體監控、新聞匯總與監控、產品評論與消費者意見挖掘、徵人訊息收集。
● 控制周邊:自動開啟應用程式與操作、鍵盤快捷鍵自動化。
● 多工作業:多執行緒數據下載、多執行緒同時處理多個用戶請求、定時多執行緒執行企業數據備份。
● 多媒體:音訊分類、情緒分析。
● AI 視覺:物體追蹤、車牌辨識、色彩分析。
多次與教育界的朋友相聚,談到電腦語言的發展趨勢,大家一致公認Python已經是當今最重要的電腦語言了,幾乎所有知名公司,例如:Google、Facebook、⋯等皆已經將此語言列為必備電腦語言。了解許多人想學Python,市面上的書也不少了,許多人買了許多書,學習Python 路上仍感障礙重重,原因是沒有選到好的書籍,市面上許多書籍的缺點是:
□ Python 語法講解不完整,沒有建立 Python 紮實語法的觀念
□ 用 C、C++、Java 觀念撰寫實例
□ Python 語法的精神與內涵未做說明
□ Python 進階語法未做解說
□ 基礎實例太少,沒經驗的讀者無法舉一反三
□ 模組介紹不足,應用範圍有限
許多讀者因此買了一些書,讀完了,好像學會了,但到了網路看專家撰寫的程式往往看不懂。就這樣我決定撰寫一本豐富、生活化、企業應用、有趣且實例完整,同時深入講解Python 語法的入門書籍。其實這本書也是目前市面上講解Python 書籍中語法最完整、應用範圍最廣、範例最豐富的書籍。整本書從Python 風格說起,拋棄C、C++、Java 思維,將Python 語法、內涵與精神功能火力全開,完全融入矽谷頂尖Python 工程師的邏輯與設計風格。
全書有約1250 個實例、檔案與程式搭配約530 個模組的函數,輔助約280 個習題與檔案,外加130 頁的習題電子書,用極深入、最詳細的態度講解Python 語法的基礎與進階知識,例如:utf-8 中文編碼、list、tuple、dict、set、bytes、bytearray、closure、lambda、Decorator、@property、@classmethod、@staticmathod⋯等。
此外,也將應用範圍擴充至下列應用:
● 人工智慧基礎知識融入章節內容
● 從 bytes 說起、編碼 (encode)、解碼 (decoding)
● 完整解說 Unicode 字符集和 utf-8 依據 Unicode 字符集的中文編碼方式
● 生成式 (generator) 建立 Python 資料結構,串列 (list)、字典 (dict)、集合 (set)
● 在座標軸內計算任 2 點之間的距離,同時解說與人工智慧的關聯
● 經緯度計算地球任 2 城市之間的距離,學習取得地球任意位置的經緯度
● 萊布尼茲公式、尼拉卡莎、蒙地卡羅模擬計算圓週率
● 基礎函數觀念,也深入到嵌套、closure、lambda、Decorator 等高階應用
● Google 有一篇大數據領域著名的論文,MapReduce:Simplified Data Processingon Large Clusters,重要觀念是MapReduce,筆者將對map( ) 和reduce( ) 完整解說,更進一步配合lambda 觀念解說高階應用
● 建立類別同時深入裝飾器 @property、@classmethod、@staticmathod 與類別特殊屬性與方法
● 設計與應用自己設計的模組、活用外部模組 (module)
● 設計加密與解密程式、檔案壓縮與解壓縮
● 程式除錯 (debug) 與異常 (excepon) 處理
● 檔案讀寫與目錄管理
● 剪貼簿 (clipboard) 處理
● 正則表達式 (Regular Expression)
● 遞廻式觀念與碎形 (Fractal)
● 影像處理與文字辨識,更進一步說明電腦儲存影像的方法與觀念
● 建立有個人風格的 QR code 與電子名片 QR code
● 認識中文分詞 jieba 與建立詞雲 (wordcloud) 設計
● GUI 設計 - 實作小算盤
● 動畫、音樂、多媒體與遊戲
● Matplotlib 中英文圖表繪製、2D 與 3D 動畫
● 說明 csv 和 json 檔案
● 繪製世界地圖
● 台灣股市資料擷取與圖表製作
● 網路爬蟲與多工爬蟲
● 用 Python 執行手機傳簡訊、傳送與接收電子郵件
● 處理 PDF、浮水印與加密技術
● 用 Python 控制螢幕與鍵盤
● 輕量級的資料庫 SQLite 實作、Python 操作 MySQL
● 多工與多執行緒設計
● 海龜繪圖,設計萬花筒與滿天星星
● YouTube 的下載與多執行緒下載
● 藝術創作邁向實作機場人臉辨識系統
● 聊天機器人、Emoji 機器人、搭配 ChatGPT 設計 Line Bot 機器人
● 網路程式 Server 端與 Client 端程式設計,筆者也設計了簡單的聊天室
寫過許多的電腦書著作,本書沿襲筆者著作的特色,程式實例豐富,相信讀者只要遵循本書內容必定可以在最短時間精通Python 設計,邁向頂尖高手之路。編著本書雖力求完美,但是學經歷不足,謬誤難免,尚祈讀者不吝指正。
洪錦魁2023-12-5
jiinkwei@me.com