以下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]
答案與詳解
y = x[:] 建立新的串列,所以 y[0] = 4 只會把 y 變成 [4, 2, 3],不會改變 x。之後 x[2] += y[0],也就是 x[2] = 3 + 4 = 7,因此回傳 [1, 2, 7]。
Examly 收錄 38 萬+ 道歷屆題目,每題都有像這樣的精選詳解。免費下載,立即開練。
