파이썬 객관식 심화 — SET 06¶
이름: ____________ 점수: _____ / 100 난이도: ★★★★☆
각 코드의 실행 결과 또는 옳은 설명을 보기에서 하나 고르세요. (문항당 10점, 범위: 1~8장 종합)
1. (자료형) 다음 코드의 출력은?¶
print("abcdefg"[5:1:-1])
① fedc ② edcb ③ gfedcb ④ fedcb ⑤ cdef
2. (연산자) 다음 코드의 출력은?¶
print(2 * 3 ** 2 - 10 // 3)
① 21 ② 15 ③ 26 ④ 14 ⑤ 12
3. (while) 다음 코드의 출력은?¶
i = 0
result = 0
while i < 10:
i += 1
if i % 3 == 0:
continue
if i > 7:
break
result += i
print(result, i)
① 19 8 ② 22 8 ③ 19 10 ④ 12 8 ⑤ 28 10
4. (for) 다음 코드의 출력은?¶
count = 0
for i in range(3):
for j in range(3):
if j == i:
break
count += 1
print(count)
① 6 ② 3 ③ 9 ④ 0 ⑤ 4
5. (함수) 다음 코드의 출력은?¶
def f(a):
b = a
b.append(99)
x = [1, 2]
f(x)
print(x)
① [1, 2] ② [1, 2, 99] ③ [99, 1, 2] ④ Error ⑤ None
6. (클래스) 다음 코드의 출력은?¶
class A:
data = [0]
def __init__(self):
self.x = len(A.data)
a = A()
A.data.append(1)
b = A()
print(a.x, b.x)
① 1 2 ② 1 1 ③ 2 2 ④ 2 1 ⑤ Error
7. (예외 처리) 다음 코드의 출력은?¶
def f():
try:
return "try"
finally:
return "finally"
print(f())
① try ② finally ③ try finally ④ None ⑤ Error
8. (모듈) random.shuffle(lst)에 대한 설명으로 옳은 것은?¶
① 섞인 새 리스트를 반환하고 원본은 그대로다
② 원본 리스트를 제자리에서 섞고 None을 반환한다
③ 리스트를 오름차순으로 정렬한다
④ 리스트에서 하나를 무작위로 뽑아 반환한다
⑤ 오류가 발생한다
9. (리스트) 다음 코드의 출력은?¶
row = [0, 0]
grid = [row, row]
grid[0][1] = 5
print(grid)
① [[0, 5], [0, 0]] ② [[0, 5], [0, 5]] ③ [[0, 0], [0, 5]] ④ [[5, 5], [5, 5]] ⑤ Error
10. (딕셔너리) 다음 코드의 출력은?¶
d = {"a": [1], "b": [1]}
d["a"].append(2)
print(d["a"], d["b"])
① [1, 2] [1, 2] ② [1, 2] [1] ③ [1] [1] ④ [1, 2] [2] ⑤ Error