單元1:進階資料結構與演算法基礎
複習Python內建資料結構(list、dict、set)的高效操作
- 進階資料結構:堆(heapq)、優先佇列、圖
- 基本演算法:排序(快速排序、合併排序)、搜尋(二分搜尋)
課程名稱: | 進階Python程式設計 |
課程英文名稱: | Advanced Python Programming | ||||||||||||||||||||||||||||||||||||||
教學目標:
為進階Python程式設計課程設定的教學目標旨在提升學生的高階編程能力,涵蓋以下核心內容:學生將掌握進階資料結構(如堆、圖)與演算法(動態規劃、搜尋),並分析其複雜度;精通物件導向程式設計的進階概念,如繼承、抽象類與設計模式;熟練運用生成器、函數式編程及非同步編程(asyncio)優化程式效能;深入理解模組與套件管理,應用pandas、scikit-learn等庫進行資料分析與機器學習;培養程式碼最佳化(使用cProfile)與單元測試(pytest)能力;最終透過團隊專案(如網頁應用或自動化工具)整合所學,熟悉git協作流程。課程透過作業、專案與測驗評量,結合實作與業界案例,確保學生能將Python應用於實際問題解決。
|
|||||||||||||||||||||||||||||||||||||||||
教材大網:
單元1:進階資料結構與演算法基礎
複習Python內建資料結構(list、dict、set)的高效操作
- 進階資料結構:堆(heapq)、優先佇列、圖 - 基本演算法:排序(快速排序、合併排序)、搜尋(二分搜尋) 教學參考節數: 4
單元2:進階物件導向程式設計(OOP)
- 進階OOP:繼承、多型、抽象類(abc模組)
- 魔術方法(__str__、__iter__)、屬性管理(@property) - 設計模式:單例模式、工廠模式 教學參考節數: 5
單元3:高效編程技術
- 生成器(yield)與迭代器
- 函數式編程:map、filter、reduce、lambda - 生成式(list/dict/set comprehension)與效能比較 教學參考節數: 4
單元4:多執行緒與非同步編程
- 多執行緒(threading)、多進程(multiprocessing)
- 非同步程式設計(asyncio、事件迴圈) - 並行問題:競爭條件、死結與解決方案 教學參考節數: 5
單元5:模組與套件管理
- 創建與發布套件(setuptools、PyPI)
- 第三方庫:requests、基礎numpy - 虛擬環境(venv)與依賴管理 教學參考節數: 4
單元6:資料分析與視覺化
- 資料清理與分析(pandas)
- 資料視覺化(matplotlib、seaborn) - 基礎統計分析與資料預處理 教學參考節數: 5
單元7:機器學習入門
- 機器學習基礎:監督與非監督學習
- 使用scikit-learn實作模型(線性回歸、決策樹) - 模型評估與超參數調整 教學參考節數: 4
單元8:專案開發與程式碼最佳化
- 專案規劃與版本控制(git、GitHub)
- 程式碼效能分析(cProfile、timeit) - 單元測試(unittest、pytest) - 最終專案:網頁應用(Flask)或自動化工具 教學參考節數: 5
|
|||||||||||||||||||||||||||||||||||||||||
基本素養能力圖
系科專業能力圖
授課形式分析圖
|