📍 데이터 구조
데이터의 구조 + 연산을 같이 봐야 한다
- 데이터를 효과적으로 사용하고 관리하기 위한 구조
- 파이썬에는 대표적으로 List, Tuple, Dict, Set 등의 데이터 구조가 있다
자료 구조
컴퓨터 공학에서는 자료구조라고 한다
각 데이터 효율적인 저장과 관리를 위한 구조를 나눠놓은 것
효율적으로 저장하고 활용할 수 있게 만들어 놓은 것이 자료 구조이다
데이터 구조 활용하기
- 메서드를 사용
메서드는 클래스 내부에 정의한 함수이고 사실상 함수와 동일하다
쉽게 말하면 객체의 기능이다
데이터구조.메서드()
== 주어.동사()

파이썬 공식 문서에서 찾아보는것이 좋다
문자열
문자열 메서드
- find(x)
x의 첫 번째 위치를 반환, 없으면 -1을 반환
- index(x)
x의 첫 번째 위치를 반환, 없으면 오류 발생
문자열은 불변형인데 문자열 변경이 되는 이유?
- 기존 문자열을 변경하는게 아니라 변경된 문자열을 새롭게 만들어서 반환
ex) replace, strip, title 등
리스트
리스트 메서드
- insert(i, x)
리스트 인덱스 i에 항목 x를 삽입
- .remove(x)
가장 왼쪽에 있는 항목 x를 제거
항목이 존재하지 않는 경우, ValueError!
- .clear()
모든 항목을 삭제함
- .sort()
원본 리스트를 정렬하고 None 반환
sorted와 비교 했을 때 sorted 는 정렬된 리스트를 반환

튜플
리스트와 다른 점은 한 번 생성된 튜플은 값 변경이 불가 (불변 자료형)
튜플 메서드
튜플은 변경할 수 없기 때문에 값에 영향을 미치지 않는 메서드만을 지원
리스트 메서드 중 항목 변경 메서드 제외하고 대부분 동일
멤버십 연산자
포함여부를 확인해서 불린 값이 반환