문제
다음 Python 코드의 실행 결과를 쓰시오.
Pythondata = [10, 15, 20, 25, 30] result = [val // 3 if val > 18 else val + 5 for val in data] print(result)
정답
[15, 20, 6, 8, 10]
[15, 20, 6, 8, 10]
해설
리스트 컴프리헨션에서 각 원소에 대해 조건을 확인합니다. val > 18이면 val // 3을, 그렇지 않으면 val + 5를 적용합니다.
- 10: 10 > 18 (False) → 10 + 5 = 15
- 15: 15 > 18 (False) → 15 + 5 = 20
- 20: 20 > 18 (True) → 20 // 3 = 6
- 25: 25 > 18 (True) → 25 // 3 = 8
- 30: 30 > 18 (True) → 30 // 3 = 10