프로그래밍/Python

[Python 강의] 5강 - 데이터 구조 (리스트, 튜플, 딕셔너리, 집합)

월횽 2024. 10. 4. 06:30
728x90
반응형
SMALL

안녕하세요! 그레이 해커 월횽입니다. 이번 시간은 파이썬(Python)의 데이터 구조에 대한 내용을 준비했습니다.

 

 

1. 리스트(List)

리스트는 여러 개의 값을 저장할 수 있는 가변적인 데이터 구조입니다. Python의 리스트는 다양한 자료형을 함께 저장할 수 있습니다.

 

리스트 생성

fruits = ["사과", "배", "바나나"]
numbers = [1, 2, 3, 4, 5]
mixed = [1, "apple", 3.5, True]

 

반응형

리스트 접근

리스트의 인덱스를 통해 요소에 접근할 수 있으며, 인덱스는 0부터 시작합니다.

print(fruits[0])  # '사과' 출력
print(fruits[2])  # '바나나' 출력

 

 

리스트 요소 추가 및 삭제

· 추가: append()를 사용해 리스트 끝에 요소를 추가할 수 있습니다.
· 삭제: remove()를 사용해 특정 요소를 삭제하거나, pop()으로 마지막 요소를 제거할 수 있습니다.

728x90
fruits.append("포도")  # ['사과', '배', '바나나', '포도']
fruits.remove("배")    # ['사과', '바나나', '포도']
fruits.pop()           # ['사과', '바나나'] ('포도' 제거)

 

 

리스트 슬라이싱

리스트의 일부를 추출할 때는 슬라이싱을 사용합니다.

print(fruits[0:2])  # ['사과', '바나나'] 출력

 

 

 

2. 튜플(Tuple)

튜플은 리스트와 유사하지만, 한 번 생성되면 수정할 수 없는 불변형 데이터 구조입니다. 리스트와 달리 수정이 필요 없는 데이터에 사용합니다.

 

튜플 생성

my_tuple = (1, 2, 3)
single_tuple = (5,)  # 요소가 하나일 때는 쉼표 필요

 

SMALL

튜플 접근

리스트와 마찬가지로 인덱스를 사용해 접근합니다.

print(my_tuple[1])  # 2 출력

 

튜플은 요소를 변경하거나 삭제할 수 없습니다, 단 새 튜플을 만들 수는 있습니다.

 

 

3. 딕셔너리(Dictionary)

딕셔너리는 키(key)와 값(value)의 쌍으로 이루어진 데이터 구조입니다. 키를 통해 값에 접근할 수 있으며, 키는 고유해야 하고 값은 중복 가능하며 다양한 자료형을 가질 수 있습니다.

 

딕셔너리 생성

person = {
    "name": "월횽",
    "age": 30,
    "city": "서울"
}

 

딕셔너리 접근

키를 사용해 값을 가져올 수 있습니다.

print(person["name"])  # '월횽' 출력
print(person.get("age"))  # 30 출력

 

 

딕셔너리 요소 추가 및 삭제

person["job"] = "개발자"  # 새로운 키-값 추가
del person["city"]        # 'city' 항목 삭제

 

 

딕셔너리 반복

딕셔너리는 키와 값을 함께 반복할 수 있습니다.

for key, value in person.items():
    print(key, ":", value)

 

 

 

4. 집합(Set)

집합은 중복을 허용하지 않는 데이터 구조입니다. 순서가 없기 때문에 인덱스로 접근할 수 없습니다. 주로 중복 제거나 교집합, 차집합 연산에 사용됩니다.

 

집합 생성

my_set = {1, 2, 3, 4, 4, 5}  # 중복된 4는 하나만 저장됨

 

 

집합 요소 추가 및 삭제

my_set.add(6)  # 집합에 6 추가
my_set.remove(3)  # 집합에서 3 삭제

 

 

집합 연산

· 합집합: | 또는 union()
· 교집합: & 또는 intersection()
· 차집합: - 또는 difference()

set1 = {1, 2, 3}
set2 = {2, 3, 4}

print(set1 | set2)  # {1, 2, 3, 4} (합집합)
print(set1 & set2)  # {2, 3} (교집합)
print(set1 - set2)  # {1} (차집합)

 

다음 시간에는 파일 입출력에 대해 배워서 데이터를 파일에 저장하고 불러오는 방법을 알아보겠습니다.

 

 

 

 

 

- 이전 수업 목록

 

 

 

728x90
반응형
LIST