Menu
Coddy logo textTech

리스트 슬라이싱 2부

Coddy Python 여정의 Fundamentals 섹션에 포함된 레슨 — 77개 중 65번째.

슬라이싱에는 또 다른 step 매개변수가 있습니다: lst[start:stop:step]. 예를 들어 다음 리스트를 살펴보세요:

numbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

인덱스 1부터 8까지 매 두 번째 요소를 가져옵니다:

print(numbers[1:8:2])
# 출력: [1, 3, 5, 7]

인덱스 2부터 매 세 번째 요소를 가져옵니다:

print(numbers[2::3])
# 출력: [2, 5, 8]

슬라이싱은 음수 인덱스도 지원합니다.

끝에서부터 세기:

print(numbers[-3:])
# 출력: [7, 8, 9]

여기서 -3은 "끝에서 3번째 위치부터 시작"을 의미합니다.

끝까지 세기:

print(numbers[:-2])    
# 출력: [0, 1, 2, 3, 4, 5, 6, 7]

여기서 -2는 "끝에서 2번째 위치에서 멈춤"(제외)을 의미합니다.

음수 증감값을 사용한 역순 출력:

print(numbers[::-1])
# Output: [9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
  • 첫 번째 : 앞의 빈 공간은 "처음부터 시작"을 의미합니다.
  • : 사이의 빈 공간은 "끝까지 진행"을 의미합니다.
  • -1은 "한 번에 한 단계씩 뒤로 이동"을 의미합니다. 
challenge icon

챌린지

쉬움

입력으로 리스트를 받는(given) 프로그램을 작성하고, 다음 슬라이싱 연산을 기반으로 세 개의 새로운 리스트를 출력하세요:

  • 인덱스 1(두 번째 요소)부터 시작하여 매 세 번째 요소를 포함하는 리스트
  • 6번째 요소부터 1번째 요소까지 역순으로 모든 요소를 포함하는 리스트
  • 리스트의 중간부터 끝까지 매 두 번째 요소를 포함하는 리스트

치트 시트

슬라이싱 구문: lst[start:stop:step]

슬라이싱 예시:

numbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

# 인덱스 1부터 8까지 두 번째 요소마다 출력
print(numbers[1:8:2])  # Output: [1, 3, 5, 7]

# 인덱스 2부터 세 번째 요소마다 출력
print(numbers[2::3])  # Output: [2, 5, 8]

# 마지막 세 요소
print(numbers[-3:])  # Output: [7, 8, 9]

# 마지막 두 요소를 제외한 모든 요소
print(numbers[:-2])  # Output: [0, 1, 2, 3, 4, 5, 6, 7]

# 리스트 뒤집기
print(numbers[::-1])  # Output: [9, 8, 7, 6, 5, 4, 3, 2, 1, 0]

주요 포인트:

  • 음수 인덱스는 리스트의 끝에서부터 계산합니다.
  • 첫 번째 : 앞의 빈 공간은 "처음부터 시작"을 의미합니다.
  • : 사이의 빈 공간은 "끝까지 진행"을 의미합니다.
  • 음수 step은 순서를 뒤집습니다.

직접 해보기

lst = input().split(",")
# 아래에 코드를 작성하세요
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

Fundamentals의 모든 레슨