본문으로 건너뛰기
Python 기초집LESSON 08

리스트와 인덱싱·슬라이싱

난이도입문
예상 시간30분
선수지식이전 강의

8강. 리스트와 인덱싱·슬라이싱

1. 이번 강의에서 해결할 문제

누적 합계만 남기면 각 전투를 다시 분석할 수 없습니다. 개별 피해량을 순서대로 저장하고 필요한 구간을 선택합니다.

2. 학습 목표

3. 핵심 개념

리스트는 순서가 있고 변경 가능한 컬렉션입니다. 첫 인덱스는 0, 마지막은 -1입니다. items[start:stop]의 stop은 포함하지 않습니다. 대입은 같은 리스트를 공유할 수 있으므로 복사가 필요할 때 명시합니다.

4. 단계별 코드 예시

파일 경로: C:\dev\game-log-analyzer\main.py

main.py
damages = []

for _ in range(5):
damages.append(int(input("피해량: ")))

print("첫 전투:", damages[0])
print("마지막 전투:", damages[-1])
print("최근 3회:", damages[-3:])

highest_first = sorted(damages, reverse=True)
print("원본:", damages)
print("높은 순:", highest_first)
print("평균:", sum(damages) / len(damages) if damages else 0)
PowerShell · 실행
py -3.13 .\main.py

5. 코드가 동작하는 이유

append는 리스트 끝에 한 값을 추가합니다. 슬라이싱은 새 리스트를 만들고 sorted도 원본을 바꾸지 않은 정렬 결과를 반환합니다. len은 원소 수, sum은 수치 합계를 계산합니다.

6. 자주 하는 실수와 해결법

7. 직접 실습

8. 이해 점검 질문 3개

9. 핵심 요약

MINI QUIZ

리스트와 인덱싱·슬라이싱 미니 퀴즈

선택 즉시 정답과 해설을 확인할 수 있습니다. 결과는 이 브라우저에만 저장됩니다.

0 / 2
  1. 문제 1“리스트와 인덱싱·슬라이싱” 실습 결과를 해석하는 올바른 기준은 무엇인가요?
  2. 문제 2“리스트와 인덱싱·슬라이싱”의 작업 기준으로 ‘없는 인덱스 접근’을 진단하거나 바로잡은 선택은 무엇인가요?
LESSON STATUS

학습을 마쳤나요?

직접 실습과 점검 질문까지 확인한 뒤 완료로 표시하세요.

8강. 리스트와 인덱싱·슬라이싱 미완료 상태