SQLD프로그래밍 언어 활용Python 리스트 컴프리헨션난이도 2MCQ

SQLD Python 리스트 컴프리헨션 기출문제 #4081

문제

아래 Python 코드의 실행결과로 올바른 것은 무엇인가?

Python
a = [[0 for a in range(2)] for b in range(3)] print(a)

① [0, 0, 0, 0, 0, 0] ② [[0, 0], [0, 0], [0, 0]] ③ [[0, 0, 0], [0, 0, 0]] ④ [[0, 0], [0, 0, 0]]

정답

2

해설

정답: 2. 내부 리스트 [0, 0]가 바깥 반복문에 의해 3개 생성되므로 [[0, 0], [0, 0], [0, 0]]가 출력된다.

오답 풀이

  • 1번: 1차원 리스트가 아니라 2차원 리스트가 생성된다.
  • 2번: 길이 2의 리스트가 3개 생성되어 맞다.
  • 3번: 길이 3의 리스트가 2개 생성되는 구조가 아니다.
  • 4번: 각 내부 리스트의 길이는 동일하게 2이다.

보충 개념 리스트 컴프리헨션에서 안쪽 표현식이 먼저 생성되고 바깥 반복에 따라 반복된다.

SQLD 시험 준비 가이드

이런 문제 20~50개를 한 번에 풀어보세요

매번 새로 추가되는 모의고사 + 오답 자동 복습 + 회차별 실력 추적. 회원가입 후 무료 이용.

[SQLD] Python 리스트 컴프리헨션 프로그래밍 언어 활용 기출 #4081 | 문어CBT