파이썬 기초 - 리스트 / 튜플
처음 딱 봤을 때 이 개념이 좀 어렵게 다가왔다ㅠ
하지만 어려울수록 더 많이 보면 돼
1. 리스트(list)
- 파이썬의 자료 구조 중 하나
- 순서가 있고, 수정이 가능한 자료구조
- 순서가 있어 인덱싱, 슬라이싱으로 접근할 수 있음
- 대괄호([])로 작성되고, 리스트 내부의 요소는 콤마(,)로 구분
- 추가, 수정, 삭제가 가능★
1) 리스트 선언
2) 리스트 인덱싱, 슬라이싱
(1) 리스트 인덱싱
이중리스트를 만들어 안에서 안의 데이터를 가져와보자!
temp에 안의 리스트를 인덱싱하여 넣어 다시 인덱싱하는 방법도 있지만
list2[3][1] 하면 바로 쉽게 가져올 수 있다.
(2) 리스트 슬라이싱
이중리스트 데이터에 접근해보자!
3) 리스트 반복(연산자 활용)
리스트를 곱한 값을 나타낼 수도 있고
리스트끼리 더할 수도 있다.
4) 리스트 관련 함수
(1) 추가함수 3가지
- append() : 리스트 끝에 값을 추가하는 함수(기능)
- extend() : 여러 요소를 한꺼번에 추가하는 함수(기능)
- insert () : 원하는 인덱스 위치에 값을 추가하는 함수(기능)
(2) 삭제기능 2가지
- del 키워드 : 인덱스 번호 이용 삭제
- remove() : 값을 이용 삭제
(3) sort() : 리스트 정렬(default값 : 오름차순)
(4) reverse() : 역순으로 뒤집는 함수
(5) index() : 리스트 값 위치 반환
(6) pop() : 마지막 값을 반환 후 리스트에서 제거
(7) len() : 리스트 값의 개수를 반환하는 함수
5) 리스트 값 수정 시 주의사항
list6[2:4] = [6] 으로 2, 3의 값을 6으로 수정할 때
2 = 6, 3 = 6 으로 바뀌어 [0, 1, 6, 6, 4]가 되는 것이 아니라,
2, 3 = 6 으로 되어 하나의 값으로 수정되어
[0, 1, 6, 4] 라는 결과가 나오고 리스트 길이가 수정되니 주의하여야 한다!
2. 튜플(tuple)
- 파이썬의 자료 구조 중 하나
- 순서가 있고, 수정이 가능한 자료구조
- 순서가 있어 인덱싱, 슬라이싱으로 접근할 수 있음
- 소괄호()로 작성되고, 리스트 내부의 요소는 콤마(,)로 구분
- 하나의 튜플에 여러 자료형을 포함
- 추가, 수정, 삭제가 불가능★
1) 튜플 선언
소괄호를 쓰지 않고 선언하고 프린트해도 튜플값으로 출력한다.(디폴트값이 튜플)
2) 튜플 인덱싱, 슬라이싱
이중튜플을 활용하여 인덱싱, 슬라이싱을 해보자!
3) 튜플 추가, 수정, 삭제 불가능?!
TypeError: 'tuple' object does not support item assignment
튜플의 데이터를 변경하는 순간 오류가 난다 !
튜플의 데이터는 변경할 수 없다.
3. 리스트와 튜플의 공통점, 차이점
1) 공통점
- 타입과 상관 없이 일련의 요소(Element)를 갖을 수 있다.
- 요소의 순서를 관리한다.(인덱싱, 슬라이싱 가능)
2) 차이점
- 리스트는 가변적(mutable)이며, 튜플은 불변적(immutable)이다.
- 리스트는 요소가 몇 개 들어갈지 명확하지 않을 때 사용한다.
- 튜플은 요소 개수를 사전에 정확히 알고 있을 때 사용한다.
* 패킹 : 한 변수에 여러 개의 데이터를 한꺼번에 할당할 때 사용(묶는다)
* 언패킹 : 패킹된 데이터를 각각의 변수로 반환하는 것(묶은 걸 푼다)