콘텐츠로 이동

SET 06 — 정답 및 해설

문항 1 2 3 4 5 6 7 8 9 10
정답

1. 정답 ① fedc [5:1:-1]은 인덱스 5부터 1은 미포함, 끝(1+1=2)까지 −1씩 거꾸로: 인덱스 5(f),4(e),3(d),2(c) → fedc.

2. 정답 ② 15 3 ** 2 = 92 * 9 = 18, 10 // 3 = 3. 18 - 3 = 15.

3. 정답 ① 19 8 i=1,2result=3, i=3continue, i=4,5result=12, i=6continue, i=7result=19, i=8i>7이라 break. 출력 19 8.

4. 정답 ② 3 break안쪽 루프만 종료. i=0: 바로 break(0). i=1: j=0에서 1 더하고 j=1 break(1). i=2: j=0,1에서 2 더하고 break(2). 합 0+1+2 = 3.

5. 정답 ② [1, 2, 99] b = a같은 리스트를 가리키는 별칭(alias). b.append(99)가 원본 x도 바꿈 → [1, 2, 99].

6. 정답 ① 1 2 a 생성 시 data = [0]이라 a.x = 1. 그 뒤 append(1)data = [0, 1]. b 생성 시 b.x = len([0, 1]) = 2.

7. 정답 ② finally return "try"를 실행하려는 순간에도 finally가 먼저 실행되는데, finallyreturn이 있으면 그 값이 최종 반환값이 됨 → "finally".

8. 정답 ② random.shufflelist.sort처럼 원본을 제자리에서 섞고 None을 반환합니다. 반환값을 변수에 담으면 None이 들어가는 함정.

9. 정답 ② [[0, 5], [0, 5]] grid = [row, row]같은 리스트 row를 두 번 담음. grid[0][1] = 5row를 바꾸면 두 칸 모두 반영 → [[0, 5], [0, 5]].

10. 정답 ② [1, 2] [1] d["a"]d["b"]서로 다른 리스트(각각 [1]). d["a"]에만 append[1, 2], d["b"][1] 그대로. (9번과 달리 별개 객체)