- 각각의 컨테이너 자료형에 따라서 차이가 있으며, 파이썬의 대표적인 컨테이너 자료형으로는 List(리스트), tuple(튜플), Dic(딕셔너리), Set(세트)이 있다.
- list는 데이터를 수정할 수 있지만, tuple은 수정할 수 없다.
- Dic(딕셔너리)는 Key Values로 자료구조가 이루어져 있다.
- set은 내부에 중복된 데이터가 허용되지 않는다.
- 인덱스란, 아이템에 자동으로 부여되는 번호표
- 리스트 길이란, 리스트에 저장된 아이템의 개수를 뜻한다.
- for문을 이용하면 리스트의 아이템을 자동으로 참조할 수 있다.
두번째 for문의 range 대신 입력된 'cars'는 'iterable 객체'로 반복 가능한 객체라면 입력이 가능하다.
- for문을 이용하면 리스트 내 리스트의 아이템도 자동으로 참조할 수 있다.
- enumerate 함수를 통해 아이템을 열거할 수 있다.
- append 함수를 이용하면 마지막 인덱스에 아이템을 추가할 수 있다.
- insert() 함수를 이용하면 특정 위치에 아이템을 추가할 수 있다.
pop()를 입력하면 마지막 아이템 삭제, ()안에 위치를 입력하면 해당위치의 아이템 삭제
- remove() 함수를 이용하면 특정 위치에 아이템을 삭제할 수 있다.
- remove() 함수로는 1개밖에 삭제가 안되며, 2개 이상인 경우 while 문으로 삭제
- extend()함수를 이용해 리스트에 또 다른 리스트를 연결(확장)할 수 있다.
+(덧셈 연산자)를 이용해 리스트에 또 다른 리스트를 연결(확장)할 수 있다.
- sort() 함수를 이용해 오름차순으로 정렬할 수 있다.
- sort(reverse=True) 함수를 이용해 내림차순으로 정렬할 수 있다.
- reverse()를 이용하면 아이템의 순서를 뒤집을 수 있다.
- 슬라이싱 : 리스트에서 원하는 아이템만 추출하는 것
- [min : max : 간격)으로 사용 가능함.
- [min <= n < max]
- 음수로도 사용이 가능하며, 음수인 경우 뒤에서부터 계산
- 처음과 끝은 생략 가능함.
- [slice(시작, 끝, 간격)]으로도 사용이 가능함.
- 처음과 끝은 생략 가능함.
- 리스트를 곱셈 연산 하면 아이템이 반복된다.
- index(item) 함수로 item의 인덱스를 알아낼 수 있다.
- index 함수는 앞쪽의 1개의 아이템만 찾을 수 있다.
- count()함수를 이용해 특정 아이템의 개수를 알아낼 수 있다.
- del 키워드를 통해 특정 아이템을 삭제할 수 있다.
- del 변수명[아이템 위치(n:m으로 범위 삭제도 가능]로 사용
- 리스트(list)와 비슷하지만 아이템 변경(수정, 삭제 등) 불가
- 리스트는 대괄호로 아이템을 선언하지만 튜플은 소괄호로 선언
- 튜플에 또다른 컨테이너 자료형 데이터를 저장할 수 있다.
- 튜플도 리스트와 마찬가지로 아이템에 자동으로 부여되는 번호표가 존재
- 앞쪽부터 0, 1, 2 순으로 인덱스(index)가 부여됨.
- in, not in 키워드를 이용하면 아이템의 존재 유/무를 알 수 있다.
- 문자열에서도 사용 가능함(문자열 내 특정 키워드 있는지 없는지 True/False 로 확인
- 리스트와 마찬가지로, 튜플에 저장된 아이템의 개수를 튜플 길이라 한다.
- len 함수를 이용해 튜플 길이를 출력할 수 있다.
- len()과 반복문을 이용하면 튜플의 아이템 조회가 가능하다.
- tuple은 수정이 불가하기 때문에 extend함수는 사용 불가하고 덧셈 연산자만 사용 가능
- 리스트와 마찬가지로 [n:m]을 이용해 리스트에서 원하는 아이템만 추출 가능
- 튜플이기 때문에 아이템의 변경은 불가하지만, 리스트에 튜플 아이템으로는 변경 가능
- 튜플은 리스트와 달리 아이템의 추가, 변경, 삭제가 불가하다.
- 튜플은 선언 시 소괄호 생략이 가능하다.
- 리스트와 튜플은 자료형 변환이 가능하다.
- 튜플은 수정이 불가하기 때문에 리스트로 변환 후 정렬
- 리스트로 변환 후 sort() or reverse로 정렬
- 튜플인 상태에서도 sorted()함수를 이용하면 오름차순으로 정렬 가능.
- 단, 반환되는 데이터는 리스트 자료형임.
- for문을 이용하면 튜플의 아이템을 자동으로 참조할 수 있다.
- list와 동일
- 키(key)와 값(value)를 이용해서 자료를 관리한다.
- {}를 이용해 선언하고, '키:값' 형태로 아이템을 정의한다.
- key와 value에는 숫자, 문자(열), 논리형 뿐만 아니라 컨테이너 자료형도 올 수 있다.
- key에 immutable 값은 올 수 있지만 mutable 값은 올 수 없다.
- immutable(불변) = int, float, str, tuple
- mutable(가변) = list, dic
- 딕셔너리는 키(key)를 이용해서 값(value)를 조회한다.
- 존재하지 않는 키를 이용한 조회 시 에러(error)가 발생한다.
- get(key)를 이용해서 값(value)를 조회할 수 있다.
- get()은 key가 없어도 에러가 발생하지 않고 :None을 출력한다.
- '딕셔너리이름 [키(key)]=값(value)' 형태로 아이템을 추가한다.
- 추가하려는 키(key)가 이미 있다면 기존 값이 변경된다.
- 딕셔너리(dictionary) 추가에서 언급했듯이 이미 존재하는 key에 값(value)를 추가하는 경우 기존 값이 신규 값으로 변경된다.
- keys()는 키만 모아서 반환해주는 함수
- values()는 값만 모아서 반환해주는 함수
- items()는 아이템을 모두 반환해주는 함수
-del과 key를 이용한 item 삭제