68. 다음 파이썬으로 구현된 프로그램의 실행 결과로 옳은 것은?

① [20, 60] ② [60, 20]
❸ [0, 20, 40, 60] ④ [10, 30, 50, 70]
이 문제는 파이썬의 리스트 슬라이싱(slicing) 기능을 이용한 문제입니다. 리스트 슬라이싱을 잘 이해하면 쉽게 풀 수 있어요! 😊
문제 분석
주어진 리스트 a는 아래와 같습니다.
a = [0, 10, 20, 30, 40, 50, 60, 70, 80, 90]
그리고 질문은 다음과 같은 슬라이싱을 수행한 결과입니다.
a[ :7:2]
슬라이싱 구문은 [start:stop:step]의 형식을 따릅니다. 이 각 부분이 무엇을 의미하는지 자세히 살펴볼게요.
1. start: 리스트의 어디에서부터 슬라이싱을 시작할지 나타냅니다. start를 생략하면 기본값은 0입니다.
2. stop: 슬라이싱이 끝나는 지점입니다. stop을 생략하면 리스트의 끝까지 슬라이싱이 됩니다.
3. step: 슬라이싱을 진행하는 "간격"을 나타냅니다. step을 2로 설정하면 두 칸씩 건너뛰며 값을 가져옵니다.
따라서 a[ :7:2]의 의미는:
- start가 생략되었으므로 첫 번째 원소부터 시작 (즉, 0번 인덱스부터)
- stop이 7로 지정되어 있으므로, 7번 인덱스 바로 전까지 (즉, 6번 인덱스까지)
- step이 2이므로, 두 칸씩 건너뛰며 값을 가져옵니다.
슬라이싱 해석
a[:7:2]를 실제로 실행하면, 리스트의 0번 인덱스부터 6번 인덱스까지, 두 칸씩 건너뛰며 값을 가져옵니다.
0번부터 6번까지의 인덱스 값:
[0, 10, 20, 30, 40, 50, 60]
여기서 두 칸씩 건너뛰면서 값을 가져오면:
- 0번 인덱스: 0
- 2번 인덱스: 20
- 4번 인덱스: 40
- 6번 인덱스: 60
따라서 결과는 [0, 20, 40, 60]이 됩니다.
결론
따라서 정답은 **③ [0, 20, 40, 60]**입니다.
예시 실행
a = [0, 10, 20, 30, 40, 50, 60, 70, 80, 90]
print(a[:7:2]) # 결과: [0, 20, 40, 60]
표로 정리
인덱스 0 1 2 3 4 5 6 7 8 9
값 | 0 | 10 | 20 | 30 | 40 | 50 | 60 | 70 | 80 | 90 |
- 슬라이싱 범위: [:7] → 0번부터 6번 인덱스까지
- step=2: 두 칸씩 건너뛰며 [0, 20, 40, 60]
결론 📝
a[:7:2]는 리스트에서 두 칸씩 건너뛰어 가져온 값이므로, [0, 20, 40, 60]이 정답입니다.
반응형
'기출문제 > 정보처리기사' 카테고리의 다른 글
2020년 4회 정보처리기사 기출문제 70번 (0) | 2025.04.03 |
---|---|
2020년 4회 정보처리기사 기출문제 69번 (0) | 2025.04.03 |
2020년 4회 정보처리기사 기출문제 67번 (0) | 2025.04.03 |
2020년 4회 정보처리기사 기출문제 66번 (0) | 2025.04.03 |
2020년 4회 정보처리기사 기출문제 65번 (0) | 2025.04.03 |