리스트 인덱싱
a = [1, 2, ['a', 'b']]
|
|
코드
|
결과
|
a
|
[1, 2, ['a', 'b']]
|
a[0]
|
1
|
a[-1]
|
['a', 'b']
|
a[-1][0]
|
'a'
|
리스트 슬라이싱
(문자열 슬라이싱과 사용법이 동일하다)
a = [1, 2, 3, 4, 5]
|
|
코드
|
결과
|
a[0:2]
|
[1, 2]
|
리스트 연산
연산자
|
예시 코드
|
결과
|
설명
|
+
|
a = [1, 2, 3]
b = [4, 5, 6]
a + b
|
[1, 2, 3, 4, 5, 6]
|
'+'연산은 두 리스트를 단순히 이은 새 리스트를 생성한다.
|
*
|
a = [1, 2, 3]
a * 3
|
[1, 2, 3, 1, 2, 3, 1, 2, 3]
|
'*'연산은 그 횟수만큼 리스트를 반복하여 새로운 리스트를 생성한다.
|
len
|
a = [1, 2, 3]
len(a)
|
3
|
리스트에 있는 원소 개수를 반환한다.
|
리스트의 수정 / 삭제
|
코드
|
결과
|
리스트 수정
|
a = [1, 2, 3]
a[2] = 4
a
|
[1, 2, 4]
|
리스트 삭제
|
a = [1, 2, 3, 4, 5]
del a[2:]
a
|
[1, 2]
|
리스트 관련 함수
함수
|
설명
|
a.append(x)
|
리스트의 맨 마지막에 요소 x를 추가
|
a.sort()
|
정렬
|
a.reverse()
|
역순으로 뒤집기
|
a.index(x)
|
x 위치에 있는 값을 반환
|
a.insert(x, y)
|
x 위치에 요소 y를 삽입
|
a.remove(x)
|
처음으로 나오는 요소 x를 삭제
|
a.pop(x)
|
리스트의 x번째 요소를 반환하고 삭제 (x 자리에 아무것도 안쓰면 맨 마지막 요소)
|
a.count(x)
|
리스트에 요소 x가 몇 개 있는지 조사하여 그 개수를 반환
|
a.extend(x)
|
원래의 a 리스트에 x 리스트를 더하기 (x 자리에는 리스트만 올 수 있다)
|
리스트 복사
리스트는 대부분의 다른 자료형들과 달리, 대입 연산자를 사용하여 복사하려고 할 경우 복사되지 않습니다. 따라서 리스트에 있는 copy 메서드를 이용하여 복사하여야 합니다.
a = [1, 2, 3]
# a와 b는 완전히 동일한 객체를 가리킨다. (즉 복사되지 않았다.)
b = a
# a와 b는 다른 객체를 가리키지만 내용이 동일하다 (복사)
b = a.copy()
단, 주의할 것이 있습니다. 2차원 이상의 다차원 리스트는 리스트를 완전히 복사하려면 copy 메서드 대신 copy 모듈의 deepcopy 함수를 사용해야 합니다.
import copy
b = copy.deepcopy(a)
728x90
반응형
'Language > Python' 카테고리의 다른 글
파이썬의 자료형 - 딕셔너리 (0) | 2022.04.19 |
---|---|
파이썬의 자료형 - 튜플 (0) | 2022.04.19 |
파이썬의 자료형 - 집합 (0) | 2022.04.19 |
파이썬의 자료형 - 문자열 (0) | 2022.04.18 |
파이썬의 자료형 (0) | 2022.04.18 |