본문 바로가기
프로그래밍/Python

[Python] 4. Python의 -데이터 구조-

by iwbap 2024. 6. 17.
728x90
반응형

Python 학습: 데이터 구조

Python은 다양한 데이터 구조를 제공하여 데이터를 효율적으로 저장하고 조작할 수 있습니다. 이번 글에서는 리스트, 튜플, 딕셔너리, 집합에 대해 알아보겠습니다.


1. 리스트: 리스트 생성, 접근, 수정

리스트는 여러 값을 저장할 수 있는 순서가 있는 컬렉션입니다. 리스트는 대괄호 []로 생성하며, 인덱스를 사용하여 요소에 접근하고 수정할 수 있습니다.

 

- 리스트 생성과 접근 예제

[python]
 
# 리스트 생성
fruits = ["apple", "banana", "cherry"]

# 리스트 접근
print(fruits[0])  # apple 출력
print(fruits[1])  # banana 출력
print(fruits[2])  # cherry 출력
 
 

- 리스트 수정 예제

[python]
 
# 리스트 수정
fruits[1] = "blueberry"
print(fruits)  # ['apple', 'blueberry', 'cherry'] 출력

# 리스트에 요소 추가
fruits.append("orange")
print(fruits)  # ['apple', 'blueberry', 'cherry', 'orange'] 출력

# 리스트에서 요소 제거
fruits.remove("blueberry")
print(fruits)  # ['apple', 'cherry', 'orange'] 출력
 

리스트는 다양한 메서드를 통해 요소를 추가하거나 제거할 수 있습니다. append, remove, pop 등의 메서드를 사용하여 리스트를 조작할 수 있습니다.


2. 튜플: 튜플 생성, 접근

튜플은 리스트와 비슷하지만, 한 번 생성되면 수정할 수 없습니다. 튜플은 소괄호 ()로 생성하며, 인덱스를 사용하여 요소에 접근할 수 있습니다.

 

- 튜플 생성과 접근 예제

[python]
 
# 튜플 생성
dimensions = (1920, 1080)

# 튜플 접근
print(dimensions[0])  # 1920 출력
print(dimensions[1])  # 1080 출력
 

튜플은 불변(immutable) 데이터 구조로, 생성된 후에는 요소를 변경할 수 없습니다. 따라서 튜플은 변경되지 않는 데이터의 저장에 적합합니다.


3. 딕셔너리: 키-값 쌍, 접근, 수정

딕셔너리는 키-값 쌍을 저장하는 컬렉션입니다. 딕셔너리는 중괄호 {}로 생성하며, 키를 사용하여 값에 접근하고 수정할 수 있습니다.

 

- 딕셔너리 생성과 접근 예제

[python]
 
# 딕셔너리 생성
person = {
    "name": "Bob",
    "age": 25,
    "city": "New York"
}

# 딕셔너리 접근
print(person["name"])  # Bob 출력
print(person["age"])   # 25 출력
print(person["city"])  # New York 출력
 
 

- 딕셔너리 수정 예제

[python]
 
# 딕셔너리 수정
person["age"] = 26
print(person)  # {'name': 'Bob', 'age': 26, 'city': 'New York'} 출력

# 딕셔너리에 키-값 쌍 추가
person["email"] = "bob@example.com"
print(person)  # {'name': 'Bob', 'age': 26, 'city': 'New York', 'email': 'bob@example.com'} 출력

# 딕셔너리에서 키-값 쌍 제거
del person["city"]
print(person)  # {'name': 'Bob', 'age': 26, 'email': 'bob@example.com'} 출력
 

딕셔너리는 keys, values, items 등의 메서드를 사용하여 키와 값을 쉽게 조작할 수 있습니다.


4. 집합: 집합 생성, 집합 연산

집합은 중복되지 않는 요소들의 컬렉션입니다. 집합은 중괄호 {} 또는 set() 함수를 사용하여 생성할 수 있습니다. 집합은 수학적 집합 연산을 지원합니다.

 

- 집합 생성 예제

[python]
 
# 집합 생성
numbers = {1, 2, 3, 4, 5}
print(numbers)  # {1, 2, 3, 4, 5} 출력

# 빈 집합 생성
empty_set = set()
print(empty_set)  # set() 출력
 
 

- 집합 연산 예제

[python]
 
# 집합에 요소 추가
numbers.add(6)
print(numbers)  # {1, 2, 3, 4, 5, 6} 출력

# 집합에서 요소 제거
numbers.remove(3)
print(numbers)  # {1, 2, 4, 5, 6} 출력

# 집합 연산
set1 = {1, 2, 3}
set2 = {3, 4, 5}

# 합집합
print(set1 | set2)  # {1, 2, 3, 4, 5} 출력

# 교집합
print(set1 & set2)  # {3} 출력

# 차집합
print(set1 - set2)  # {1, 2} 출력

# 대칭 차집합
print(set1 ^ set2)  # {1, 2, 4, 5} 출력
 

집합은 요소의 중복을 허용하지 않으며, 효율적인 데이터 조작을 위한 다양한 연산을 제공합니다.


이 글에서는 Python의 주요 데이터 구조인 리스트, 튜플, 딕셔너리, 집합에 대해 알아보았습니다. 이러한 데이터 구조를 이해하고 활용하면 Python 프로그래밍의 효율성을 크게 높일 수 있습니다. Happy Coding!

728x90
반응형