본문 바로가기
IT/Python Quiz

[Python] 슬라이싱 특집 퀴즈2

by Echinacea 2025. 2. 20.
반응형

슬라이싱 개념을 제대로 이해하고 있는지 확인하는 퀴즈입니다. 아래 문제를 풀어보세요!


 

 

🔹 문제 1: 리스트의 끝에서부터 슬라이싱

다음 코드의 실행 결과는 무엇일까요?

numbers = [5, 10, 15, 20, 25, 30]
print(numbers[-3:])

(1) [15, 20, 25]
(2) [20, 25, 30]
(3) [10, 15, 20]
(4) [25, 30]


 

 

🔹 문제 2: 문자열의 특정 부분 추출

다음 코드의 실행 결과는 무엇일까요?

text = "Python Slicing Quiz"
print(text[7:14])

(1) "Slicing"
(2) "licing "
(3) "Slicin"
(4) "Slicing Q"


 

 

🔹 문제 3: 리스트에서 건너뛰며 슬라이싱

다음 코드의 실행 결과는 무엇일까요?

numbers = [2, 4, 6, 8, 10, 12, 14, 16]
print(numbers[1::2])

(1) [4, 6, 8, 10]
(2) [4, 8, 12, 16]
(3) [2, 6, 10, 14]
(4) [4, 8, 12]


 

 

🔹 문제 4: 다차원 배열의 특정 부분 슬라이싱

다음 코드의 실행 결과는 무엇일까요?

import numpy as np
matrix = np.array([[10, 20, 30], [40, 50, 60], [70, 80, 90]])
print(matrix[1:, :2])

(1) [[40, 50], [70, 80]]
(2) [[10, 20], [40, 50]]
(3) [[40, 60], [70, 90]]
(4) [[20, 30], [50, 60]]


 

 

🔹 문제 5: slice() 객체 활용

다음 코드의 실행 결과는 무엇일까요?

s = slice(0, 5, 2)
numbers = [1, 2, 3, 4, 5, 6, 7]
print(numbers[s])

(1) [1, 3, 5]
(2) [2, 4, 6]
(3) [1, 3, 5, 7]
(4) [3, 5, 7]


 

 

 

 

 

 

 

 

 

 

 

 

 

🔹 정답 및 해설

1️⃣ 문제 1 정답: (2) [20, 25, 30]
📌 numbers[-3:]는 리스트의 끝에서 세 개의 요소를 가져옵니다.
📌 즉, numbers[-3:] → [20, 25, 30]

2️⃣ 문제 2 정답: (1) "Slicing"
📌 text[7:14]는 인덱스 7부터 13까지의 문자를 추출합니다.
📌 즉, "Python Slicing Quiz"[7:14] → "Slicing"

3️⃣ 문제 3 정답: (2) [4, 8, 12, 16]
📌 numbers[1::2]는 인덱스 1부터 시작하여 2칸씩 건너뛰며 요소를 선택합니다.
📌 즉, [2, 4, 6, 8, 10, 12, 14, 16][1::2] → [4, 8, 12, 16]

4️⃣ 문제 4 정답: (1) [[40, 50], [70, 80]]
📌 matrix[1:, :2]는 두 번째 행부터 시작하여 0번, 1번 열만 가져옵니다.
📌 즉, [[10, 20, 30], [40, 50, 60], [70, 80, 90]][1:, :2] → [[40, 50], [70, 80]]

5️⃣ 문제 5 정답: (1) [1, 3, 5]
📌 slice(0, 5, 2)는 인덱스 0부터 4까지 2칸씩 건너뛰며 요소를 가져옵니다.
📌 즉, [1, 2, 3, 4, 5, 6, 7][slice(0, 5, 2)] → [1, 3, 5]


 

반응형

댓글