데이터 분석 관련

파이썬 컬렉션 시리즈 (1) : 리스트(list) 완벽 가이드! 생성부터 활용까지 한눈에 정리

cjangela 2025. 1. 22. 21:53
반응형

 

 

1. 리스트(list)란?

  • 리스트는 여러 개의 값을 순서대로 저장할 수 있는 자료형으로, 대괄호[]를 사용하여 정의됩니다. 데이터의 중복을 허용하며, 값을 자유롭게 수정하고 삭제할 수도 있습니다. 리스트는 데이터를 연속적으로 관리할 때 유용하며, 인덱스(index)를 활용하여 개별 요소에 접근할 수 있습니다.
  • 예제를 통해 리스트의 기본적인 생성 방법을 살펴보겠습니다.
korea_list = ['서울', '대전', '청주', '서울']

print(korea_list)
print(korea_list[0])
print(len(korea_list))
print(len(korea_list[1]))
[출력 값]
['서울', '대전', '청주', '서울']
서울
4
2

리스트 기본 생성 방법

[예제 설명]

  1. print(korea_list)를 통해 리스트 전체를 출력할 수 있으며, 중복된 값('서울')이 함께 선언되는 것을 확인할 수 있습니다.
  2. print(korea_list [0])을 통해 리스트의 첫 번째 요소를 출력하며, 결과는 '서울'입니다.
  3. len(korea_list)는 리스트의 전체 길이를 반환하며, 결과는 4입니다.
  4. lens(korea_list [1])은두 번째 요소('대전')의 문자열 길이를 출력하며, 결과는 2입니다.

*인덱스 등 참조:

2025.01.20 - [데이터 분석 관련] - 파이썬 기초: 데이터 타입 완벽 정리! (문자형, 숫자형, 불리언)

 

파이썬 기초: 데이터 타입 완벽 정리! (문자형, 숫자형, 불리언)

파이썬을 처음 배우는 분들이라면, 반드시 알아야 할 개념이 바로 데이터 타입입니다. 데이터 타입은 변수에 저장되는 값의 종류를 결정하며, 프로그래밍에서 매우 중요한 요소입니다. 이번 글

cjangela.tistory.com


2. 리스트 슬라이싱(Slicing)

  • 리스트에서 특정 범위의 데이터를 가져오고 싶다면 슬라이싱을 사용할 수 있습니다. 슬라이싱은 [시작 인덱스:끝 인덱스] 형태로 사용되며, 끝 인덱스에 해당되는 값은 포함되지 않습니다.
index      =    0       1       2       3      4       5
korea_list = ['부산', '인천', '속초', '포항', '단양', '군산']

print(korea_list[0:2])    
print(korea_list[3:])
print(korea_list[:1])
print(korea_list[:])
print(korea_list[::-1])
print(korea_list[::2])
[출력 값]
['부산', '인천']
['포항', '단양', '군산']
['부산']
['부산', '인천', '속초', '포항', '단양', '군산']
['군산', '단양', '포항', '속초', '인천', '부산']
['부산', '속초', '단양']

리스트 슬라이싱

[예제 설명]

  1. korea_list [0:2]는인덱스 0~1까지의 값, 즉 ['부산', '인천']을 출력합니다.
  2. korea_list [3:]는인덱스 3부터 끝까지의 값, ['포항', '단양', '군산']을 출력합니다.
  3. korea_list [:1]은인덱스 0의 값만 포함한 ['부산']을 출력합니다.
  4. korea_list [:]는리스트 전체 값을 출력합니다.
  5. korea_list [::-1]는리스트를 역순으로 정렬하여 출력합니다.
  6. korea_list [::2]는입력된 숫자의 간격, 즉 0, 2, 4번 인덱스의 값으로 ['부산', '속초', '단양']을 출력합니다.

3. 리스트 수정

  • 리스트의 특정 값을 변경하는 것도 가능합니다. 단일 요소뿐 아니라 여러 개의 데이터 값을 한 번에 변경할 수도 있습니다.
korea_list = ['서울', '대전', '청주']

# 단일 항목 수정
korea_list[1] = '부산'
print(korea_list)

# 여러 항목 수정
korea_list[0:2] = ['속초', '영월']
print(korea_list)
[출력 값]
['서울', '부산', '청주']
['속초', '영월', '청주']

리스트 단일 항목 수정
리스트 여러 항목 수정

[예제 설명]

  1. korea_list [1]= '부산'은 인덱스 1의 값을 '부산'으로 변경합니다.
  2. korea_list [0:2]= ['속초', '영월']은 인덱스 0~1을 '속초', '영월'로 변경합니다.

4. 리스트 추가 및 제거

  • 리스트에 새로운 값을 추가하거나 제거할 수 있는 주요 메서드가 있습니다.

1) 리스트 추가

append() : 가장 마지막에 항목 추가
insert() : 지정한 위치에 항목 추가
# append() : 마지막 삽입
korea_list = ['서울', '부산', '대전']
korea_list.append('청주')
print(korea_list)

# insert() : 특정 위치에 삽입
capital_list = ['서울', '워싱턴', '도쿄']
capital_list.insert(1, '베이징')
print(capital_list)
[출력 값]
['서울', '부산', '대전', '청주']
['서울', '베이징', '워싱턴', '도쿄']

리스트 추가

[예제 설명]

  1. append('청주') → '청주'가 리스트 마지막에 추가됩니다.
  2. insert(1, '베이징') → 인덱스 1 위치에 '베이징'이 삽입됩니다.

2) 리스트 제거

remove() : 항목 제거
pop() : 마지막 또는 지정한 위치의 항목 제거 후 반환
# remove() : 값 제거
korea_list = ['서울', '부산', '대전']
korea_list.remove('부산')
print(korea_list)

# pop() : 제거 후 반환(인덱스로 제거)
capital_list = ['서울', '워싱턴', '도쿄']
release = captial_list.pop(1)
print(capital_list)  # 현재 남은 데이터
print(release)  # 제거된 데이터
[출력 값]
['서울', '대전']
['서울', '도쿄']
워싱턴

리스트 제거

[예제 설명]

  1. remove('부산') → '부산'을 리스트에서 제거합니다.
  2. pop(1) → 인데스 1의 값을 제거하며, 반환값으로 '워싱턴'을 출력합니다.

5. 리스트 확장 및 초기화(제거)

1) 리스트 확장

  • 리스트에 다른 리스트를 합쳐서 확장할 수 있습니다.
extend() : 각 리스트끼리 합치기
+ : extend()와 동일하게, 각 리스트끼리 합치기
# 예제문
a_team = ['울산', '전주']
b_team = ['광주', '논산']

# extend() : 리스트 합치기
a_team.extend(b_team)
print(a_team)

# + : 리스트 합치기
c_team = a_team + b_team
print(c_team)
[출력 값]
['울산', '전주', '광주', '논산']
['울산', '전주', '광주', '논산', '광주', '논산']

리스트 확장

[예제 설명]

  1. extend() : a_team에 b_team을 합치며, 기존 a_team이 변경됩니다.
  2. + : a_team과 b_team을 합친 새로운 c_team을 생성합니다.

2) 리스트 초기화(제거)

  • 리스트 자체를 제거할 수도 있습니다.
clear() : 리스트 비우기
del : 리스트 객체 삭제하기
# 예제문
a_team = ['울산', '전주']
b_team = ['광주', '논산']

# clealr() : 리스트 비우기
a_team.clear()
print(a_team)

# del : 리스트 객체 삭제하기
del a_team
print(a_team)
[출력 값]
[]
NameError : name 'a_team' is not defined. Did you mean: 'b_team'?

리스트 초기화(제거)

[예제 설명]

  1. clear() : 리스트의 모든 요소를 제거하여, 빈 리스트[]로 만듭니다.
  2. del : 리스트 객체 자체를 삭제하여, 에러가 발생합니다.

이상으로 파이썬 리스트에 대해 자세히 알아보았습니다. 다음 글에서는 파이썬 컬렉션 시리즈 (2) : 튜플(tuple)에 대해 다루겠습니다. 감사합니다:-)