파이썬 객관식 심화 — SET 07¶
이름: ____________ 점수: _____ / 100 난이도: ★★★★★
각 코드의 실행 결과 또는 옳은 설명을 보기에서 하나 고르세요. (문항당 10점, 범위: 1~8장 종합)
1. (리스트) 다음 코드의 출력은?¶
print([0, 1, 2, 3, 4, 5, 6, 7][6:1:-2])
① [6, 4, 2] ② [7, 5, 3] ③ [6, 4] ④ [1, 3, 5] ⑤ [2, 4, 6]
2. (연산자) 다음 코드의 출력은?¶
print(5 + 3 // 2 * 2)
① 8 ② 7 ③ 9 ④ 5 ⑤ 11
3. (while) 다음 코드의 출력은?¶
a, b = 1, 2
count = 0
while a < 50:
a, b = b, a + b
count += 1
print(a, count)
① 55 8 ② 34 7 ③ 55 7 ④ 89 8 ⑤ 34 8
4. (for) 다음 코드의 출력은?¶
nums = [2, 5, 8, 3, 10, 7]
best = nums[0]
for n in nums:
if n % 2 == 0 and n > best:
best = n
print(best)
① 8 ② 10 ③ 7 ④ 2 ⑤ 5
5. (함수) 다음 코드의 출력은?¶
total = 0
def acc(n):
global total
for i in range(n):
total += i
acc(3)
acc(4)
print(total)
① 6 ② 9 ③ 3 ④ 12 ⑤ Error
6. (클래스) 다음 코드의 출력은?¶
class Tally:
seen = {}
def mark(self, key):
self.seen[key] = self.seen.get(key, 0) + 1
a = Tally()
b = Tally()
a.mark("x")
b.mark("x")
a.mark("y")
print(Tally.seen)
① {'x': 2, 'y': 1} ② {'x': 1, 'y': 1} ③ {'x': 1} ④ {'x': 2, 'y': 2} ⑤ Error
7. (예외 처리) 다음 코드의 출력은?¶
try:
d = {"a": 1}
print(d["a"] + d["b"])
except TypeError:
print("T")
except KeyError:
print("K")
① T ② K ③ 1 ④ Error ⑤ 2
8. (모듈) 다음 코드의 출력은?¶
import math
print(math.factorial(3) ** 2 % 7)
① 36 ② 1 ③ 0 ④ 2 ⑤ 6
9. (튜플) 다음 코드의 출력은?¶
t = (1, [2, 3])
t[1].append(4)
print(t)
① (1, [2, 3, 4]) ② Error ③ (1, [2, 3]) ④ (1, [4]) ⑤ (1, 2, 3, 4)
10. (리스트) 다음 코드의 출력은?¶
result = [i * j for i in range(1, 3) for j in range(1, 3)]
print(result)
① [1, 2, 3, 4] ② [1, 2, 2, 4] ③ [1, 4] ④ [2, 2] ⑤ [1, 2, 4, 6]