Responsive image

第 16 期 Python 程式設計入門共學營

programming

目標對象

  1. 買了一堆程式書和線上課程但覺得內容過多無法消化的學習者
  2. 非資訊相關科系但對於程式設計有興趣的一般民眾想先試試看是否合適者
  3. 想要自學程式設計但不得其門而入的自學者
  4. 具備基礎電腦操作能力但想要建立基本程式設計觀念和撰寫簡單生活應用的學習者
  5. 從事 PM 產品經理或是 UI/UX 使用者經驗研究但對於程式設計有興趣的專業工作者
  6. 曾經或正在自學程式設計卻因為沒有導師和戰友可以交流討論,最後放棄的學習者
  7. 本共學營不適合:已經掌握 Python 程式開發基礎和專案開發能力的同學

預期收穫

  1. 建立基本 Python 程式設計觀念和除錯技巧,打好未來學習進階課程基礎
  2. 學習電腦科學和程式設計背後運作的邏輯,當家人朋友甚至小孩問你時不會驚慌失措
  3. 累積 4 大專題作品實作經驗,建立基本程式設計應用能力
  4. 學習如何撰寫個人技術文章,強化記憶並養成技術文章部落格寫作習慣
  5. 認識一群志同道合的戰友、學伴和同學,組成讀書會或共學團隊
  6. 透過導師/助教解惑去除自學程式單打獨鬥的學習盲點
  7. 建立未來自學程式設計和跨領域自學能力並對未來自學程式設計方向更加了解

事前準備

  1. 本共學營不需程式設計基礎,但需要具備基本電腦操作和上網能力以及中文、英文查詢資料閱讀能力
  2. 請安排共學營期間一週至少約有 6-12 小時(根據學員程度不同花的時間也有所不同),可以撰寫作業任務和學習相關內容(共 8 + 4 週 24 堂,含 4 週期末專題實作)
  3. 本共學營採線上進行,準備一個可以上網的電腦,不限作業系統(課程主要將以 Windows/MacOS 講解,但會補充 Linux 操作方式)就可以隨時隨地學習
  4. 本共學營會使用 Python3 程式語言講解
  5. 請先註冊全球最大程式設計程式碼分享平台 Github 個人帳號

詳細內容介紹


目錄大綱

開營介紹
1 課程活動進行方式
2 隨堂練習操作與作業任務提交方式
3 Markdown 語法入門教學
4 社群共學討論方式
5 課程活動獎勵方式
6 規劃你的學習計劃
7 總結
8 隨堂練習方式
Python 程式設計概論
1 什麼是程式設計?
2 開始寫程式前,先學習使用文字描述、流程圖
3 隨堂練習:判斷可否投票小程式
4 隨堂練習參考解答:判斷可否投票小程式
5 程式如何在電腦上運作?
6 學習和程式設計師一樣的思考
7 Python 新手常見語法錯誤
8 隨堂練習:請幫忙 debug 除錯
9 隨堂練習參考解答:請幫忙 debug 除錯
10 程式設計小撇步
11 為什麼選擇 Python?
12 隨堂練習:直譯器執行體驗
13 隨堂練習參考解答:直譯器執行體驗
14 總結
變數、物件型別與運算式
1 Python 世界都是物件
2 隨堂練習:將字串物件轉成小寫
3 隨堂練習參考解答:將字串物件轉成小寫
4 將物件指派(assign)給變數
5 隨堂練習:使用變數
6 隨堂練習參考解答:使用變數
7 變數命名(naming)
8 隨堂練習:變數命名抓錯
9 隨堂練習參考解答:變數命名抓錯
10 Python 物件型別
11 隨堂練習:BMI 身高體重指數
12 隨堂練習參考解答:BMI 身高體重指數
13 敘述(statement)、運算式(expression)與運算子
14 隨堂練習:猜猜四則運算結果
15 隨堂練習參考解答:猜猜四則運算結果
16 總結
使用者輸入輸出與字串物件操作
1 Python 使用者輸入輸出
2 隨堂練習:使用者的年齡
3 隨堂練習參考解答:使用者的年齡
4 認識字元與字串
5 隨堂練習:跳脫字元
6 隨堂練習參考解答:跳脫字元
7 字串基本操作方式:字串索引 index
8 隨堂練習:使用字串索引 index
9 隨堂練習參考解答:使用字串索引 index
10 字串基本操作方式:字串切片 slice
11 隨堂練習:使用字串切片 slice
12 隨堂練習參考解答:使用字串切片 slice
13 字串基本操作方式:字串長度 len
14 隨堂練習:使用字串長度 len
15 隨堂練習參考解答:使用字串長度 len
16 字串基本操作方式:使用 in 確認子字串是否存在字串
17 隨堂練習:使用 in 確認子字串是否存在字串
18 隨堂練習參考解答:使用 in 確認子字串是否存在字串
19 字串基本操作方式:字串串接 concat
20 隨堂練習:使用字串串接 concat
21 隨堂練習參考解答:使用字串串接 concat
22 字串基本操作方式:重複字串
23 隨堂練習:使用重複字串
24 隨堂練習參考解答:使用重複字串
25 隨堂練習:計算使用者輸入字串長度的程式
26 隨堂練習參考解答:計算使用者輸入字串長度的程式
27 字串進階操作:字串大小寫轉換 upper/lower
28 字串進階操作:搜尋字串 find / rfind
29 隨堂練習:搜尋字串 find
30 隨堂練習參考解答:搜尋字串 find
31 字串進階操作:取代字串 replace
32 字串進階操作:計算子字串出現次數 count
33 隨堂練習:取代字串
34 隨堂練習參考解答:取代字串
35 字串格式化(formatting)
36 隨堂練習:字串格式化
37 隨堂練習參考解答:字串格式化
38 總結
if else 條件判斷
1 if else 條件判斷入門
2 隨堂練習:if else 入門條件判斷
3 Python 邏輯運算
4 隨堂練習:Python 邏輯運算
5 串接多個條件判斷
6 隨堂練習:串接多個條件判斷
7 巢狀條件判斷
8 隨堂練習:巢狀條件判斷
9 隨堂練習:coupon 兌換碼兌換
10 if elif else 進階多重條件判斷
11 隨堂練習:偶數奇數判斷
12 總結
tuple、list 物件基礎
1 tuple、list 物件基礎概論
2 可變物件(mutable)和不可變物件(immutable)的差異
3 隨堂練習:動手試試看可變物件(mutable)和不可變物件(immutable)的差異
4 什麼是 tuple 元組?
5 建立 tuple 物件範例
6 隨堂練習:建立 tuple
7 for 迴圈基礎
8 tuple 的基本操作:len() 取得 tuple 長度
9 隨堂練習:取得 tuple 長度
10 使用索引 [index] 取得 tuple 內部元素
11 隨堂練習:使用 tuple index 取值
12 使用切片 slicing [:]
13 隨堂練習:使用 slicing 取值
14 tuple 內元素互換
15 隨堂練習:tuple 內元素互換
16 tuple 的運算
17 隨堂練習:tuple 基本操作
18 什麼是 list 列表?
19 隨堂練習:建立 list
20 list 的基本操作:len() 取得 list 長度
21 隨堂練習:取得 list 長度
22 使用索引 [index] 取得 list 內部元素
23 隨堂練習:使用 list 索引 [index]
24 使用切片 slicing [:]
25 隨堂練習:使用 list slicing [:]
26 新增/刪除 list 元素
27 隨堂練習:新增刪除 list 元素
28 list 的運算
29 隨堂練習:list 的運算
30 List Comprehension(進階內容)
31 隨堂練習:List Comprehension
32 使用 enumerate 方法迭代元素
33 隨堂練習:使用 enumerate 方法迭代元素
34 list 和 tuple 的差異
35 總結
set、dict 物件基礎
1 set 集合物件基本介紹
2 隨堂練習:建立 set 物件
3 for 迴圈基礎
4 set 物件基本操作:交集、聯集、差集和對稱差
5 隨堂練習:交集、聯集、差集和對稱差
6 set 新增元素
7 隨堂練習:新增 set 元素
8 set 移除元素
9 隨堂練習:移除元素
10 set 清空集合
11 隨堂練習:清空集合
12 set 計算長度
13 隨堂練習:計算長度
14 set 判斷元素是否在集合內
15 隨堂練習:判斷元素是否在集合內
16 隨堂練習:計算交集元素個數
17 Set 排序
18 Set Comprehension(進階內容)
19 隨堂練習:Set Comprehension
20 dict 字典物件基本介紹
21 隨堂練習:建立 dict 物件
22 dict 物件基本操作
23 隨堂練習:建立 dict 並透過 key 取值
24 dict 新增修改 key/value 值
25 隨堂練習:新增修改 key/value 值
26 dict 刪除 key/value 值
27 隨堂練習:刪除 key/value 值
28 dict 取得 dict 中所有 key/value
29 隨堂練習:取得 dict 中所有 key/value
30 迭代 dict 中元素
31 隨堂練習:迭代 dict 中元素
32 Dict Comprehension(進階內容)
33 隨堂練習:Dict Comprehension
34 建立可變物件別名和複製內容(進階內容)
35 隨堂練習:統計單字出現次數
36 總結
for、while 迴圈
1 for 迴圈概論
2 隨堂練習:迴圈數字累加器
3 迭代 list/dict 物件
4 隨堂練習:迭代 list 物件
5 隨堂練習:迭代 dict 物件
6 while 迴圈概論
7 隨堂練習:while 迴圈數字累加器
8 無窮迴圈
9 break 關鍵字使用
10 隨堂練習:加強版迴圈數字累加器(break)
11 continue 關鍵字使用
12 隨堂練習:加強版迴圈數字累加器(continue)
13 隨堂練習:印出婚宴參加名單人數
14 FAQ 常見問題
15 總結
turtle 海龜繪圖基礎操作
1 turtle 海龜繪圖模組初體驗
2 隨堂練習:turtle 海龜繪圖模組初體驗
3 使用 turtle 製作簡易圖形
4 隨堂練習:使用 turtle 製作簡易圖形
5 隨堂練習:使用 turtle reset
6 隨堂練習:使用 turtle 製作簡易圖形 II
7 隨堂練習:使用 turtle 填滿顏色
8 隨堂練習:移動繪筆
9 使用 turtle 製作進階圖形
10 隨堂練習:繪製圓形(while)
11 隨堂測驗:繪製多邊形(for)
12 總結
函式(function)
1 認識函式
2 隨堂練習:使用內建函式
3 建立你的第一個函式
4 隨堂練習:建立你的第一個函式
5 文字字串說明(docstring)
6 隨堂練習:文字字串說明(docstring)
7 函式傳入參數
8 隨堂練習:參數傳入
9 函式回傳值
10 隨堂練習:函式回傳值
11 使用函式
12 隨堂練習:設計傳入字串可以回傳字串長度的函式
13 全域變數與區域變數
14 隨堂練習:全域變數與區域變數
15 Decorator 裝飾器 / @ 語法糖(進階內容)
16 隨堂練習:Decorator 裝飾器 / @ 語法糖
17 總結
類別(class)與物件導向程式設計
1 Python Object 物件基礎
2 設計自己的第一個類別 class
3 定義物件屬性
4 隨堂練習:定義物件屬性
5 產生物件
6 隨堂練習:產生物件
7 定義物件方法
8 隨堂練習:存取屬性與執行方法
9 隨堂練習:設計自定義長方形類別
10 Python 物件導向程式設計(進階內容)
11 封裝(Encapsulation)
12 隨堂練習:封裝(Encapsulation)
13 繼承(Inheritance)
14 隨堂練習:繼承(Inheritance)
15 多型(Polymorphism)
16 隨堂練習:多型(Polymorphism)
17 總結
檔案系統與處理(file)
1 檔案路徑概論
2 Python 檔案處理
3 Python 開關檔案
4 Python 讀取檔案
5 隨堂練習:讀取檔案
6 Python 寫入檔案
7 隨堂練習:寫入檔案(覆寫)
8 隨堂練習:寫入檔案(寫到最後)
9 Python 使用 with as 檔案操作
10 隨堂練習:with as 檔案操作
11 總結
Python 專案開發環境設定
1 Python 開發環境建置概論
2 安裝 Anaconda
3 使用 Terminal & Command Line Prompt (CMD)
4 Windows 作業系統 CMD
5 MacOS / Linux 作業系統
6 常用指令碼
7 Windows 和 MacOS/Linux 常見指令對照
8 使用 pip 管理第三方套件指令
9 使用 Jupyter Notebook
10 使用 Visual Studio Code
11 環境建置常見問題
12 總結
模組(module)使用與設計
1 模組化程式概論
2 認識套件/模組
3 隨堂練習:使用套件/模組
4 自定義套件/模組
5 隨堂練習:自定義模組
6 隨堂練習:自定義套件
7 Python 常用內建模組
8 隨堂測驗:猜數字遊戲改良版
9 第三方套件使用
10 隨堂練習:第三方套件使用
11 總結
錯誤異常處理與撰寫測試
1 錯誤異常處理概論
2 隨堂練習:錯誤異常處理
3 Python 常見的例外型別
4 隨堂練習:常見的例外型別
5 單元測試初體驗
6 隨堂練習:單元測試模組函式
7 重新複習
8 總結
Web Crawler 網路爬蟲專案 I
1 網路爬蟲概論
2 Web 網頁概念基礎
3 HTML 語法入門
4 隨堂練習:HTML 語法
5 JSON 資料格式基礎
6 如何判斷網頁的資料是從伺服器 server 渲染出來的?
7 使用瀏覽器開發者工具觀察網頁
8 使用 requests 模組發出網路請求
9 隨堂練習:使用 requests 發出 GET 網路請求
10 使用 requests 送出 POST 請求
11 總結
Web Crawler 網路爬蟲專案 II
1 剖析靜態 HTML 網頁內容
2 CSS 外觀樣式與選擇器入門
3 隨堂練習:CSS 選擇器練習
4 CSS 選擇器基本種類
5 隨堂練習:基本選擇器自己動手練習
6 使用 Beautiful Soup 取出資料內容
7 完整範例程式碼
8 隨堂練習:取出一筆財報資料
9 隨堂練習:取出多筆財報資料
10 清理資料與資料格式化
11 儲存成 CSV 檔案
12 隨堂練習:網路爬蟲財報資料並寫入檔案中
13 網路爬蟲專案完整程式碼
14 常見問題補充說明
15 總結
Pandas 資料分析與視覺化專案 I
1 Pandas 模組概論
2 Series 物件基本操作
3 隨堂練習:Series 基本操作
4 DataFrame 物件基本操作 I
5 DataFrame 物件基本操作 II
6 隨堂練習:實際操作 DataFrame 物件
7 匯入/匯出 CSV 檔案
8 隨堂練習:匯入 CSV 檔案
9 總結
Pandas 資料分析與視覺化專案 II
1 Matplotlib 圖表繪製初體驗
2 認識圖表專有名詞
3 長條圖
4 隨堂練習:長條圖
5 折線圖
6 隨堂練習:折線圖
7 圓餅圖
8 隨堂練習:圓餅圖
9 隨堂測驗:使用 Matplotlib 進行圖表繪製
10 整合 Pandas 和 Matplotlib 進行圖表繪製初體驗
11 股價走勢折線圖
12 Matplotlib 支援中文字體
13 專案範例程式:規劃目標並準備資料
14 專案範例程式:載入資料
15 專案範例程式:繪製圖表
16 專案範例程式:中文化
17 專案範例程式:呈現成果
18 隨堂練習:股價走勢折線圖
19 股票公司營收長條圖
20 隨堂測驗:使用 Pandas 搭配 Matplotlib 進行圖表繪製
21 補充:在電腦上支援 Matplotlib 顯示中文字體
22 總結
Tkinter 桌面應用程式專案 I
1 Tkinter 桌面應用程式專案概論
2 隨堂練習:Hello World 第一個桌面應用程式
3 建立按鈕元件和監聽事件處理
4 隨堂練習:建立按鈕元件和監聽事件處理
5 更新屬性值
6 隨堂練習:更新屬性值
7 建立輸入框元件
8 隨堂練習:輸入框元件練習
9 群組化與元素定位方式
10 隨堂練習:群組化與元素定位方式
11 總結
Tkinter 桌面應用程式專案 II
1 建立 BMI App 主視窗
2 隨堂練習:建立主視窗
3 建立 BMI App 元件
4 隨堂練習:建立 BMI App 元件
5 建立 BMI App 事件處理
6 隨堂練習:建立 BMI App 事件處理
7 總結
PyGame 經典小遊戲製作專案 I
1 PyGame 初體驗
2 PyGame 安裝套件
3 製作遊戲視窗畫面
4 範例完整程式碼
5 隨堂練習:第一個 PyGame 程式
6 繪製圖形
7 範例完整程式碼
8 隨堂練習:繪製圖形
9 載入圖片
10 隨堂練習:載入圖片
11 監聽滑鼠事件
12 隨堂練習:滑鼠點擊圖片瞬間移動
13 監聽鍵盤事件
14 常用按鍵代碼
15 隨堂測驗:偵測按鍵
16 總結
PyGame 經典小遊戲製作專案 II
1 PyGame 經典小遊戲製作專案概論
2 常見遊戲規則設計
3 隨堂練習:限制時間
4 碰撞偵測
5 隨堂練習:點擊圖片隨機移動
6 遊戲專題規劃
7 隨堂練習:建立遊戲視窗
8 遊戲元素規劃
9 隨堂練習:遊戲元素規劃
10 遊戲事件處理
11 隨堂練習:遊戲事件處理
12 整合加入遊戲規則
13 隨堂練習:整合加入遊戲規則
14 Sprite 精靈和 Group 分組類別(進階內容)
15 隨堂練習:Sprite 精靈和 Group 分組類別(進階內容)
16 總結
期末專題與課程回顧
1 前言回顧
2 課程整合與回顧
3 期末專題規劃
4 未來學習地圖
5 總結

講師介紹


happycoder | 營運團隊 @ HappyCoder 自學程式設計學院

我們希望透過自學程式設計的方式培養學員擁有:學習跨領域知識的自學能力、數位工作力、運算思維以及解決問題的能力。讓學員在面對未來科技快速變遷和競爭激烈的職場環境中擁有更好的適應能力,成為更好的自己!




FAQ 常見問題

  1. 課程購買後即可於平台存續期間不限次數重複觀看使用
  2. 本課程開放問答與社群討論功能,歡迎使用與講師和創作者交流討論
  3. 支持更多優質內容,請尊重創作者智慧財產權