항목 더하기(append, extend, insert)
.append(x): 리스트의 끝에 항목을 더한다. 리스트에 리스트, 튜플 또는 딕셔너리를 더하면 개별 요소가 아닌 자체가 더해지므로 사용 시 주의가 필요하다.
a = [1, 2, 3] a.append(4) → a = [1, 2, 3, 4] b = [1, 2] a.append(b) → a = [1, 2, 3, 4, [1, 2]] c = {'A':1} a.append(c) → a = [1, 2, 3, 4, 1, [1, 2, 3], {'A': 1}]
.extend(iterable): 리스트의 끝에 이터러블의 모든 항목을 덧붙여서 확장한다. iterable에서 알 수 있듯이 구성요소를 하나씩 반환하는 객체만 적용할 수 있다. 적용 가능한 데이터타입은 list, str, tuple, dict등의 타입이다.
a = [1, 2, 3, 4] a.extend('abcd') → a = [1, 2, 3, 4, 'a', 'b', 'c', 'd'] b = [1, 2, 3] a.extend(b) → a = [1, 2, 3, 4, 'a', 'b', 'c', 'd', 1, 2, 3] c = {'A':1, 'B':2, 'C':3} a.extend(c) → a = [1, 2, 3, 4, 'a', 'b', 'c', 'd', 1, 2, 3, 'A', 'B', 'C']
.insert(i, x): 주어진 위치(i)에 항목(x)을 삽입한다.
a = [1, 2, 3, 4] a.insert(2, 3) → a = [1, 2, 3, 3, 4] a.insert(3, 'abcd') → [1, 2, 3, 'abcd', 3, 4]
항목 없애기(remove, pop, clear)
.remove(x): 리스트에서 값이 x와 같은 첫 번째 항목을 삭제한다. 항목이 없으면 valueError를 일으킨다.
a = [1, 2, 3, 'abcd', 3, 4] a.remove(3) → a = [1, 2, 'abcd', 3, 4]
.pop([i]): i에 위치하는 항목을 삭제하고 반환한다. index가 명시되지 않으면 마지막 항목을 삭제한다. 리스트가 비어있거나 인덱스가 리스트 범위 밖이면 IndexError를 반환한다.
a = [1, 2, 3, 'abcd', 3, 4] a.pop() → 4
.clear(): 리스트의 모든 항목을 삭제한다. del a[:]와 동등
a = [1, 2, 3, 'abcd', 3, 4] a.clear() → a = []
항목의 위치 관련 메소드(index, count, sort, reverse)
.index(x, start, end): 리스트에 있는 항목 중 값이 x와 같은 첫 번째 것의 0부터 시작하는 인덱스를 반환한다. start와 end로 참조할 시작/끝점을 정할 수 있다.
a = [1, 2, 3, 'abcd', 3, 4] a.index(3, 4, 5) → 2 # 구간 지정에 따라 두 번째 3의 위치가 반환되었다.
.count(x): 리스트에서 x가 등장하는 횟수를 돌려준다.
a = [1, 2, 3, 'abcd', 3, 4] a.count(3) → 2
sort(*, key = None, reverse = False): 리스트의 항목들을 제자리에서 정렬한다. 문자열과 숫자가 혼합된 리스트에서는 작동하지 않는다.
reverse(): 리스트의 요소들을 제자리에서 뒤집는다. (list[::-1]과 동일)
a = [1, 2, 3, 'abcd', 3, 4] a.reverse() → a = [4, 3, 'abcd', 3, 2, 1]