Python/기초정리

파이썬 기초 - 리스트 / 튜플

줘니(•̀ᴗ•́)و 2023. 1. 5. 21:23
728x90

처음 딱 봤을 때 이 개념이 좀 어렵게 다가왔다ㅠ

하지만 어려울수록 더 많이 보면 돼

 

 

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)이다.

    - 리스트는 요소가 몇 개 들어갈지 명확하지 않을 때 사용한다.

    - 튜플은 요소 개수를 사전에 정확히 알고 있을 때 사용한다.

 

 

* 패킹 : 한 변수에 여러 개의 데이터를 한꺼번에 할당할 때 사용(묶는다)
* 언패킹 : 패킹된 데이터를 각각의 변수로 반환하는 것(묶은 걸 푼다)

728x90