파이썬 객관식 심화 — 핵심 SET 05¶
이름: ____________ 점수: _____ / 100 난이도: ★★★★☆
각 코드의 실행 결과 또는 옳은 설명을 보기에서 하나 고르세요. (문항당 10점, 범위: 함수·클래스·모듈/패키지·딕셔너리·리스트·튜플·set 심화)
1. (함수) 다음 코드의 출력은?¶
def f(a, b=a):
return a + b
print(f(3))
① 6
② 3
③ NameError
④ TypeError
⑤ 0
2. (함수) 다음 코드의 출력은?¶
x = 10
def foo():
global x
x += 1
return x
print(foo())
print(x)
① 10 10
② 11 10
③ 11 11
④ 10 11
⑤ UnboundLocalError
3. (클래스) 다음 코드의 출력은?¶
class Account:
def __init__(self, balance=0):
self.balance = balance
def deposit(self, amt):
self.balance += amt
return self.balance
a = Account()
print(a.deposit(100))
① 0
② 100
③ None
④ TypeError
⑤ Error
4. (모듈/패키지) 다음 코드의 출력은?¶
from math import pi
pi = 3
print(pi)
① 3.141592653589793
② 3
③ TypeError
④ NameError
⑤ Error
5. (딕셔너리) 다음 코드의 출력은?¶
d = {"users": [{"name": "Kim"}, {"name": "Lee"}]}
print(d["users"][1]["name"])
① Kim
② Lee
③ KeyError
④ IndexError
⑤ {"name": "Lee"}
6. (리스트) 다음 코드의 출력은?¶
matrix = [[1, 2], [3, 4], [5, 6]]
flat = [n for row in matrix for n in row]
print(flat)
① [1, 2, 3, 4, 5, 6]
② [[1, 2], [3, 4], [5, 6]]
③ [1, 3, 5]
④ [2, 4, 6]
⑤ Error
7. (튜플) 다음 코드의 출력은?¶
d = {}
d[(1, 2)] = "point"
print(d[(1, 2)])
① point
② KeyError
③ TypeError
④ (1, 2)
⑤ None
8. (set) 다음 코드의 출력은?¶
a = {1, 2}
b = {1, 2, 3}
print(a.issubset(b), b.issuperset(a))
① True True
② False False
③ True False
④ False True
⑤ Error
9. (함수) 다음 코드의 출력은?¶
def fact(n):
if n <= 1:
return 1
return n * fact(n - 1)
print(fact(5))
① 24
② 120
③ 60
④ None
⑤ RecursionError
10. (패키지) 다음 코드의 출력은?¶
# utils/math_utils.py
def add(a, b):
return a + b
# main.py
from utils.math_utils import add
print(add(4, 5))
① 9
② NameError
③ ModuleNotFoundError
④ AttributeError
⑤ ImportError