반응형
Notice
Recent Posts
Recent Comments
Link
Learner's Log님의 블로그
리스트 튜플 세트 딕셔너리 본문
Python에서는 데이터를 저장하고 관리하기 위해 다양한 자료구조를 제공합니다. 그중에서도 가장 자주 사용되는 자료구조로 리스트(List), 튜플(Tuple), 세트(Set), 딕셔너리(Dictionary)가 있습니다. 각각의 특징과 활용법을 이해하면 프로그래밍이 훨씬 효율적이고 재미있어집니다.
1. 리스트(List)
리스트는 말 그대로 '목록'입니다. 대괄호([])를 이용하여 만들고 대괄호 안에 올수 있는 항목 혹은 요소의 데이터 타입(숫자,문자열, 불, 리스트 등) 다양합니다. 데이터를 순서대로 저장할 수 있는 자료구조로, 데이터의 추가, 삭제, 변경이 가능합니다.
fruits = ['apple', 'banana', 'cherry'] #리스트 구조
print(fruits[0])
fruits.append('orange')
fruits.remove('banana')
print(fruits[1:3])
코드실행 결과)
특징
- 순서가 있다
- 중복 데이터를 저장할 수 있다.
- 가변적(값 변경 가능)
- 튜플, 세트, 딕셔너리도 넣을 수 있다.
언제 사용하면 좋을까?
- 순서가 중요한 데이터 관리가 필요할 때
- 데이터가 빈번히 추가/삭제될 때
주요 메서드표
메서드 | 설명 | 사용예 |
append() | 리스트에서 항목 하나를 맨 마지막에 추가 | numbers.append(42) |
insert() | 리스트에서 특정 위치에 항목을 삽입 | numbers.insert(2, 99) |
extend() | 리스트에서 항목 여러 개를 맨 마지막에 추가 | numbers.extend([5, 10, 15]) |
remove() | 입력값과 첫 번째로 일치하는 항목을 리스트에서 삭제 | numbers.remove(10) |
pop() | 리스트의 마지막 항목을 제거한 후 반환 | last_number = numbers.pop() |
index() | 리스트에서 인자와 일치하는 첫 번째 항목의 위치를 반환 | pos = numbers.index(99) |
count() | 리스트에서 인자와 일치하는 항목의 개수를 반환 | occurrences = numbers.count(5) |
sort() | 숫자나 문자열로 구성된 리스트 항목을 순방향으로 정렬 | numbers.sort() |
reverse() | 리스트 항목을 끝에서부터 역순으로 정렬 | numbers.reverse() |
2. 튜플(Tuple)
튜플은 리스트와 비슷하지만 불변(Immutable)이라는 특징이 있습니다. 데이터를 변경할 필요가 없을 때 사용합니다.
colors = ('red', 'green', 'blue') #튜플 생성
print(colors[1]) #colors[1]호출 결과값: green
특징
- 순서가 있다.
- 중복 데이터를 저장할 수 있다.
- 불변적(값 변경 불가능).
언제 사용하면 좋을까?
- 데이터가 변하지 않아야 할 때.
- 읽기 전용 데이터가 필요할 때.
3. 세트(Set)
세트는 수학의 집합처럼 중복을 허용하지 않는 자료구조입니다. 데이터의 순서를 보장하지 않습니다.
# 세트 생성
numbers = {1, 2, 3, 4, 4}
# 중복 제거된 결과
print(numbers) # {1, 2, 3, 4}
# 요소 추가
numbers.add(5)
# 요소 삭제
numbers.remove(2)
# 집합 연산
set_a = {1, 2, 3}
set_b = {3, 4, 5}
print(set_a | set_b) # 합집합 {1, 2, 3, 4, 5}
print(set_a & set_b) # 교집합 {3}
특징
- 순서가 없다.
- 중복을 허용하지 않는다.
언제 사용하면 좋을까?
- 중복 데이터를 자동으로 제거해야 할 때.
- 집합 연산(교집합, 합집합 등)을 사용할 때.
4. 딕셔너리(Dictionary)
딕셔너리는 키-값(Key-Value) 쌍으로 데이터를 저장하는 자료구조입니다. 키를 통해 값에 빠르게 접근할 수 있습니다.
# 딕셔너리 생성
person = {'name': 'Alice', 'age': 25, 'city': 'Seoul'}
# 값 접근
print(person['name']) # 'Alice'
# 값 추가 및 수정
person['job'] = 'developer'
# 값 삭제
del person['age']
특징
- 키를 기준으로 값에 접근.
- 순서가 있다(Python 3.7부터).
- 키는 중복될 수 없지만, 값은 중복 가능.
언제 사용하면 좋을까?
- 데이터를 키-값 형태로 저장할 때.
- 빠른 검색이 필요할 때.
정리
자료구조 | 순서 | 중복 | 가변성 |
리스트 | O | O | O |
튜플 | O | O | X |
세트 | X | X | O |
딕셔너리 | O | 키: X, 값: O | O |
반응형
'Python > [A to Z]Python' 카테고리의 다른 글
객체와 클래스 - 객체 지향 프로그래밍 (0) | 2025.02.08 |
---|---|
함수(Function) (0) | 2025.02.06 |
변수와 문자열 다루기(+메서드) (0) | 2025.01.02 |
논리연산과 비교연산 (0) | 2024.12.31 |
python 환경 설정💻 (0) | 2024.12.30 |