Examly題庫立即開始練習
國中教甄|資訊科技資訊科技114 年第 56 題單選題

以下Python程式碼的輸出結果為何? def S56O(): x = [1, 2, 3] y = x[:] def S56I(): nonlocal x y[0] = 4 x[2] += y[0] S56I() return x print(S56O())

A[1, 2, 3]
B[1, 2, 7]正確答案
C[4, 2, 3]
D[4, 2, 7]
答案與詳解
B
正確答案
y = x[:] 會建立新的串列,修改 y[0] 不會影響 x;但 x[2] 會加上 y[0] 的新值 4,所以輸出 [1, 2, 7]。

為什麼答案是 B

y = x[:] 建立新的串列,所以 y[0] = 4 只會把 y 變成 [4, 2, 3],不會改變 x。之後 x[2] += y[0],也就是 x[2] = 3 + 4 = 7,因此回傳 [1, 2, 7]。

載入中…

資訊科技 相關題目

想練更多資訊科技考古題?

Examly 收錄 38 萬+ 道歷屆題目,每題都有像這樣的精選詳解。免費下載,立即開練。

黑皮