模擬題庫解答與勘誤速查

老師 / 同學請先看這裡

課本第 9-18 ~ 9-21 頁的解答表有 7 處錯誤,已在下方 ⚠️ 官方勘誤(務必更正) 列出。
上課前請先叫同學把課本改過來,避免背錯答案。

頁碼怎麼看

課本用的是「章-頁」編號(例:4-23 = 第 4 章第 23 頁,印在每頁下角),
跟 PDF 的頁數不一樣。翻電子檔請對照 📖 書上頁碼 ↔ PDF 頁數對照表

回主文件 → 00-ITS Python 考照重點總整理


⚠️ 官方勘誤(務必更正)

來源:python修正.txt
題目所在檔案:2024 ITS PYTHON 出85趴.pdf(全檔 61 頁)

#課本頁碼PDF 頁數題號課本原答案正確答案為什麼
14-23p.25CH04 第 12 題DAdata = input() 的功能是「允許使用者在主控台中輸入文字」
25-17p.30CH05 第 6 題 (3)CD位數判斷:(1)if num<10 (2)elif num<100 (3)else ← 剩餘情況
35-18p.31CH05 第 6 題 (3)CD同上(此題跨兩頁,兩頁都要改)
45-24p.37CH05 第 17 題 (2)CAif grade<=100: 之後的 grade>=90巢狀內層第一個判斷 → 用 if
56-12p.44CH06 第 6 題 (B)Yes官方確認答案為 Yes(詳見下方爭議說明)
66-12p.44CH06 第 7 題 (1)(2)(3)A / A / BD / B / C三個雙引號 """ / 緊接在函式標頭後 / print(cube.__doc__)
77-12p.49CH07 第 4 題AD產生 0~10 隨機整數 → random.randint(0, 10)(含頭含尾)

📍 課本的解答表在書上 9-18 ~ 9-21 頁 = PDF 第 58 ~ 61 頁
  CH01–03 在 p.58/CH03–05 在 p.59/CH05–06 在 p.60/CH07–08 在 p.61。

關於 #5(CH06 第 6 題 B 小題)的爭議 — 上課請特別說明

題目:getpay(salary = 50000) 不會回傳任何值

def getpay(hours=40, rate=25, qty=0, qtyrate=0, salary=0):
    overtime = 0
    if qty > 0:   return qty * qtyrate     # qty=0 → 不成立
    if salary > 0: pass                    # 成立但 pass 什麼都不做
    if hours > 40: ...                     # 40 > 40 不成立
    else: return hours * rate              # ← 走到這裡,回傳 40*25 = 1000
  • 實際執行結果:會回傳 1000,所以嚴格說「不會回傳任何值」應該是 No
  • 官方 / 勘誤表答案Yes(出題者的設計意圖是「salary 這條路徑沒有寫回傳值」)。
  • 另一份 2024/12 講義的第 67 題同一題,解析寫的是 No(錯誤)

👉 建議教法:考試以官方答案 Yes 作答;但一定要讓同學實際跑一次程式,理解 pass 之後程式會繼續往下走。這是很好的觀念釐清點。


📖 書上頁碼 ↔ PDF 頁數對照表

用法

同學說「老師我卡在 5-22 那題」→ 查表 → 電子檔跳到 PDF 第 35 頁即可。
檔案:2024 ITS PYTHON 出85趴.pdf(共 61 頁)

章節書上頁碼PDF 頁數內容
CH01 變數與資料型態1-9p.1課文(型態轉換、type()
1-10 ~ 1-12p.2 ~ p.4模擬題庫 Q1 ~ Q7
CH02 運算子2-13 ~ 2-19p.5 ~ p.11模擬題庫 Q1 ~ Q14
CH03 字串與資料串列3-15p.12課文(in / not in
3-16 ~ 3-19p.13 ~ p.16模擬題庫 Q1 ~ Q9
CH04 輸入和輸出操作4-15p.17課文(with 關鍵字)
4-16 ~ 4-23p.18 ~ p.25模擬題庫 Q1 ~ Q12
CH05 判斷式和迴圈5-13p.26課文(pass 指令)
5-14 ~ 5-27p.27 ~ p.40模擬題庫 Q1 ~ Q21
CH06 函式6-9 ~ 6-15p.41 ~ p.47模擬題庫 Q1 ~ Q10
CH07 模組的使用7-11p.48課文(math.fabs()
7-12 ~ 7-15p.49 ~ p.52模擬題庫 Q1 ~ Q8
CH08 例外處理與單元測試8-11 ~ 8-14p.53 ~ p.56模擬題庫 Q1 ~ Q7
CH09 應考資訊9-17p.57證書樣張
解答9-18 ~ 9-21p.58 ~ p.61模擬試題解答表

常查題目的直達頁碼

題目書上頁碼PDF 頁數
CH02 Q12 比較運算子除錯2-17p.9
CH03 Q5 切片連連看3-18p.15
CH03 Q9 字典鍵型態3-19p.16
CH04 Q7 檔案存在與附加4-19 ~ 4-20p.21 ~ p.22
CH04 Q12 input() 功能 ⚠️4-23p.25
CH05 Q6 位數判斷 ⚠️5-17 ~ 5-18p.30 ~ p.31
CH05 Q12 質數排序5-21p.34
CH05 Q17 巢狀 if ⚠️5-24 ~ 5-25p.37 ~ p.38
CH06 Q6 預設參數薪資 ⚠️6-12p.44
CH06 Q7 Docstring ⚠️6-12p.44
CH07 Q4 隨機整數 ⚠️7-12p.49
CH08 Q4 unittest8-12p.54

⚠️ = 有勘誤,見上方 ⚠️ 官方勘誤(務必更正)


📋 完整解答表

標記說明

🔴 = 已依勘誤更正的答案

CH01 變數與資料型態

題號解答
1(1) C (float) (2) A (int) (3) A (int)
2int → age = 12bool → minor = Falsestr → name = "David"zip = "545"float → weight = 64.5
3A
4A、B
5B
6B
7A

CH02 運算子

題號解答
1B、D
2A(30.0)
3A
4A
5C、D
6C(15)
7(1) A (2) B (3) C
8(1) A (2) C (3) C
9B
10(1) B (2) A (3) A
111 → print(a % b)2 → print(a // b)2.2 → print(a / b)
12(A) Yes (B) No (C) Yes (D) Yes
13B
14B A G C E(即 b = ( - a ) ** 2

CH03 字串與資料串列

題號解答
1C
2C(True)
3(1) B (2) B (3) A (4) A
4(1) D (2) D
5(1) C (2) F (3) B (4) A
6B、D
7C
8(1) A (2) A
9(1) A (2) C (3) B

CH04 輸入與輸出

題號解答
1(1) D (%-20s) (2) B (%6.2f)
2A G F Eprint("{0:10}{1:5.1f}{2:7.2f}".format(...)
3A、B、C
4A
5A
6(1) B (2) D (3) A
7(1) D (2) C (3) A (4) C
8D A C E B
9A
10A
11(1) A (2) A
12🔴 A(課本印 D,錯)

CH05 判斷式與迴圈

題號解答
1(1) B (2) D (3) D (4) D
2(1) D (2) A (3) B (4) C
3A(71)
4(1) A (2) C (3) B (4) C
5(1) A (2) B (3) C
6(1) A (2) C 🔴 (3) D(課本印 C,錯)
705 行 → while chance <= 3:/13 行 → break/14 行 → chance += 1
8(1) A (2) C
9A E B D
10(1) C (2) B
11(1) B (2) C
12B G C E
13E A B D C
14(1) B (2) A (3) A (4) B
15(1) A (2) D (3) C
16(1) D (6) (2) C (5)
17(1) A 🔴 (2) A(課本印 C,錯) (3) C (4) C (5) B (6) B
18(1) B (2) D
19(1) D (2) A
20(1) A (2) B (3) D
21(1) A (2) B

CH06 函式

題號解答
1D
2(A) Yes (B) No (C) No (D) Yes
3A、F
4(1) B (2) A (3) B
5(A) Yes (B) Yes (C) No (D) No
6(A) No (B) Yes(⚠️ 見上方爭議說明) (C) Yes
7🔴 (1) D (2) B (3) C(課本印 A / A / B,全錯)
8(A) No (B) Yes (C) No
9A、C
10B

CH07 模組

題號解答
1B(from datetime import datetime as dt
2A(忘了 import os
3A、C
4🔴 D(課本印 A,錯)random.randint(0, 10)
5A、C
6A、D(fabs + ceil
7(1) A (2) A (3) B
8(1) A (2) A

CH08 例外處理與單元測試

題號解答
1(A) Yes (B) Yes (C) Yes (D) No
2(1) A (try:) (2) C (except)
3(1) C (assertEqual) (2) A (assertIs) (3) B (assertIn)
4(1) C (import) (2) B (unittest.TestCase) (3) C (test_isInstance(self)) (4) B (self.assertIsInstance(...))
5(1) D (try) (2) C (except) (3) E (finally)
6(A) Yes (B) Yes (C) Yes
7(A) Yes (B) No (C) No (D) No

🎯 錯最多的 10 題(建議課堂重點講解)

排名章節/題號主題為什麼會錯
1CH05 Q17if / elif 巢狀層級分不清「同層 elif」與「內層第一個要用 if」
2CH06 Q7Docstring誤以為單引號也算 docstring
3CH07 Q4 / Q3randint vs randrange「含不含結尾」記反
4CH02 Q2運算子優先序忘記 ** 優先於 *// 遇 float 回傳 float
5CH03 Q9字典鍵型態沒發現 input() 是字串
6CH04 Q7 / CH04 Q9檔案模式 w / a「覆寫」vs「附加」看題目關鍵字
7CH05 Q19range(len(x))多寫或少寫 -1
8CH04 Q11(2) / readlineEOF 與空白行"""\n" 混淆
9CH06 Q9關鍵字引數名稱只看順序沒看參數名
10CH08 Q1(D)finally 只能一個以為和 except 一樣可以多個

📎 相關文件