programming

파이썬 쿡북 4 - 리스트

leesu0605 2023. 5. 9. 10:25

리스트


리스트 : C언어의 배열과 비슷한 개념 -> 연속적인 메모리 공간
하지만, C언어와 다르게 파이썬 리스트 요소는 하나하나가 객체이기 때문에 파이썬의 모든 자료형을 저장할 수 있다.
심지어 리스트도 객체이기 때문에 리스트 안에 리스트를 요소로 주는 것도 가능하다.

선언 방법 : 대괄호로 감싸고, 요소를 콤마(,)로 구분해 넣어준다.
또는 값의 집합과 관련된 자료형을 list()함수로 줘 리스트로 만들 수 있다.


리스트 연산자


(리스트) * (정수) : 인자로 준 리스트를 정수번 반복해 만든 리스트를 리턴한다.
(리스트) + (리스트) : 첫번째 리스트 뒤에 두번째 리스트를 이어붙인다.


리스트 슬라이싱


문자열과 같이 [(정수)], [(정수):(정수)], [(정수):(정수):(정수)]의 슬라이싱 기법을 사용할 수 있다.
[(정수)] -> 리스트의 정수번째 요소 리턴
[(정수):(정수)] -> 리스트의 첫번째 인자번째 요소부터 두번째 인자-1번째 요소까지를 리스트로 리턴
[(정수):(정수):(정수)] -> [(정수):(정수)]와 같지만 리스트 속 요소를 세번째 인자만큼의 텀을 두고 리스트에 추가함


del 키워드


del 뒤에 리스트의 슬라이싱된 요소나 리스트의 특정 요소를 주면 그 요소를 삭제하고 뒤에 있는 요소들을 한 칸씩 앞으로 당긴다.


리스트 메소드


append(x) : 리스트 맨 뒤에 x를 요소로 추가
extend(x) : 리스트 맨 뒤에 리스트 x를 덧붙이기 -> (리스트) + (리스트) 연산자와 완전히 동일함
insert(x, y) : 리스트의 x번째 리스트에 y를 요소로 넣기 -> x번째 인덱스 뒤에 있는 요소들은 뒤로 밀린다.
remove(x) : 리스트에서 처음 나오는 x를 삭제하고 뒤에 있는 요소들을 한 칸씩 앞으로 당긴다. -> 없으면 오류
pop() : 리스트의 맨 뒤에 있는 요소를 삭제
sort() : 리스트를 크기 순으로 정렬
reverse() : 리스트를 현재 순선의 역순으로 뒤집기
index(x) : 리스트에서 처음 나오는 x값의 인덱스를 리턴
count(x) : 리스트에 있는 x값의 개수를 리턴한다.