리스트도 문자열과 동일한 인덱싱과 슬라이싱이 가능하다. 또한 변형 가능(mutable)하기 때문에 mutable sequence에서 공통으로 사용 가능한 연산(덧셈과 곱셈)을 적용할 수 있다. 이 부분은 문자열의 인덱싱/슬라이싱 포스트와 문자열의 덧셈과 곱셈를 참조하기 바란다.
리스트의 내장 메소들(method)들은 다음 표와 같다.
[표 1] 리스트의 메소드들
리스트 함수 | 동작 |
append(x) | x를 리스트의 마지막 요소로 추가한다. |
extend(list) | list의 요소로 원 리스트를 확장한다. |
insert(i, x) | x를 i번째 위치로 끼워 넣는다. |
remove(x) | x와 같은 첫 번째 요소를 삭제한다. |
pop() pop(i) | 마지막 요소를 삭제하고 반환한다. i번째 요소를 삭제하고 반환한다. |
clear() | 모든 요소를 삭제한다. |
index(x) | x와 같은 첫 번째 요소의 인덱스를 반환한다. |
count(x) | x와 같은 요소들의 개수를 구한다. |
sort() | 정렬 |
reverse() | 역순으로 배열 |
copy() | 얕은 복사본을 반환한다. |
이 함수들의 사용 예를 들면 다음과 같다.
>>> a = [66.25, 333, 333, 1, 1234.5] |
append()함수와 extend()함수는 그 동작에 차이가 있다.
>>> x=list(range(5))>>> x.append([5.6]) # x의 마지막 요소로 [5,6] 이 들어간다.[0,1,2,3,4,[5,6]]>>> x=list(range(5))>>> x.extend([5.6]) # x의 오른쪽에 [5,6]의 요소를 병합시킨다.[0,1,2,3,4, 5,6] |
그리고 append() 함수와 pop()함수를 이용하면 리스트를 스택(stack)으로 운영할 수 있다.
>>> stack = [3, 4, 5] |
이와 같이 리스트의 메쏘드를 이용하면 stack/queue 와 같은 고급 자료형을 쉽게 구현할 수 있다.
'프로그래밍언어.Lib > 파이썬' 카테고리의 다른 글
파이썬의 딕셔너리(dict형) 개요 (0) | 2015.05.25 |
---|---|
파이썬의 튜플(tuple) (0) | 2015.05.25 |
파이썬의 리스트(list) 생성 (0) | 2015.05.25 |
파이썬의 진리값, 비교/논리 연산자 (0) | 2015.05.25 |
파이썬 문자열의 메쏘드(method)들 (0) | 2015.05.23 |