파이썬 객관식 심화 — SET 04¶
이름: ____________ 점수: _____ / 100 난이도: ★★★★☆
각 코드의 실행 결과 또는 옳은 설명을 보기에서 하나 고르세요. (문항당 10점, 범위: 1~8장 종합)
1. (자료형) 다음 코드의 출력은?¶
print(True + True + False)
① 2 ② True ③ TrueTrueFalse ④ 1 ⑤ Error
2. (연산자) 다음 코드의 출력은?¶
print("ab" * 2 + "c" * 3)
① ababccc ② abababccc ③ abccc ④ abab ccc ⑤ Error
3. (while) 다음 코드의 출력은?¶
a, b = 0, 1
count = 0
while b < 10:
a, b = b, a + b
count += 1
print(count)
① 5 ② 6 ③ 7 ④ 4 ⑤ 무한 루프
4. (for) 다음 코드의 출력은?¶
count = 0
for n in range(10, 31):
if n % 3 == 0 or n % 5 == 0:
count += 1
print(count)
① 8 ② 10 ③ 12 ④ 7 ⑤ 11
5. (함수) 다음 코드의 출력은?¶
x = 5
def f():
x = 10
def g():
global x
x = 20
f()
g()
print(x)
① 5 ② 10 ③ 20 ④ 30 ⑤ Error
6. (클래스) 다음 코드의 출력은?¶
class P:
tag = "X"
a = P()
b = P()
a.tag = "Y"
print(a.tag, b.tag, P.tag)
① Y X X ② Y Y Y ③ X X X ④ Y X Y ⑤ Error
7. (예외 처리) 다음 코드의 출력은?¶
def check(n):
if n < 0:
raise ValueError("neg")
return n
try:
print(check(-3))
except ValueError:
print("caught")
① -3 ② caught ③ neg ④ ValueError ⑤ 3
8. (모듈) 다음 코드의 출력은?¶
import math
print(math.factorial(4) // math.factorial(3))
① 4 ② 24 ③ 8 ④ 12 ⑤ 1
9. (리스트) 다음 코드의 출력은?¶
nums = [1, 2, 3, 4, 5]
sq = [x * x for x in nums if x % 2 == 1]
print(sq)
① [1, 9, 25] ② [1, 4, 9, 16, 25] ③ [4, 16] ④ [1, 3, 5] ⑤ [2, 4]
10. (딕셔너리) 다음 코드의 출력은?¶
words = ["a", "b", "a", "c", "b", "a"]
counts = {}
for w in words:
counts[w] = counts.get(w, 0) + 1
print(counts["a"], len(counts))
① 3 3 ② 6 3 ③ 3 6 ④ 1 3 ⑤ Error