Python 程式題的重要性
自 114 年第二梯次起,iPAS 中級考試加入 25% Python 程式題,集中於 L22 和 L23 兩個科目。這是最多人擔心但其實準備方向明確的題型。
三大題型解析
題型一:語法閱讀與理解(約 45%)
給定一段 Python 程式碼,考你能否看懂在做什麼。
常考語法:
# 串列操作
nums = [1, 2, 3, 4, 5]
result = [x * 2 for x in nums if x > 2] # 列表推導式
# result = [6, 8, 10]
# 字典操作
scores = {'Alice': 90, 'Bob': 75}
top = {k: v for k, v in scores.items() if v >= 80}
# top = {'Alice': 90}
# 函式定義
def calculate(a, b, op='add'):
if op == 'add':
return a + b
return a - b
題型二:程式邏輯判斷(約 35%)
給定程式碼,判斷執行流程或找出錯誤。
常考邏輯結構:
# 迴圈與條件
for i in range(5):
if i % 2 == 0:
print(i) # 輸出:0, 2, 4
# while 迴圈
count = 0
while count < 3:
count += 1
print(count) # 輸出:3
# try/except(異常處理)
try:
result = 10 / 0
except ZeroDivisionError:
result = None
題型三:輸出預測(約 20%)
給定完整程式,預測最終輸出值。
解題技巧:逐行追蹤變數值,特別注意:
- 變數是否被重新賦值
- 迴圈執行幾次
- 函式回傳值
資料科學套件重點
NumPy 基礎
import numpy as np
arr = np.array([1, 2, 3, 4, 5])
print(arr.mean()) # 平均值:3.0
print(arr.std()) # 標準差
print(arr.shape) # 形狀:(5,)
arr2d = arr.reshape(5, 1) # 變形
Pandas 基礎
import pandas as pd
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
print(df.describe()) # 敘述統計
print(df['A'].mean()) # 欄位平均
filtered = df[df['A'] > 1] # 篩選
scikit-learn 基礎
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)
model = LinearRegression()
model.fit(X_train, y_train)
score = model.score(X_test, y_test) # R²
準備策略
- 不需要會寫程式:只需能「讀懂」程式碼、追蹤執行流程
- 熟悉基本資料結構:list、dict、tuple 的操作
- 掌握控制流程:for/while 迴圈、if/elif/else 條件判斷
- 了解函式概念:def、return、預設參數
- NumPy/Pandas 基礎:array 操作、DataFrame 篩選
快速準備清單
- Python list 的 append / pop / slice 操作
- dict 的 keys() / values() / items() 使用
- for 迴圈 + range() 的執行次數計算
- 列表推導式(list comprehension)讀懂
- numpy array 的 shape / mean / reshape
- pandas DataFrame 的 describe / 篩選條件