여러개의 데이터를 연속적으로 담아 처리하기 위해 사용하는 자료형. 리스트 대신에 배열 혹은 테이블이라고 부른다.
대괄호([])안에 원소를 넣어 초기화하며 쉼표(,)로 원소를 구분
(인덱스는 0부터 시작)ex)크기가 N이고 모든 값이 0인 1차원 리스트 초기화
n=10;
a=[0] * n
print(a)
# 출력 [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
인덱스 값을 입력하여 특정한 원소에 접근하는 것을 인덱싱이라고 한다.
a=[1,2,3];
print(a[0]);
# 출력 1
print(a[-1]);
# 출력 3
리스트에서 연속적인 위치를 갖는 원소들을 가져와야 할 때는 슬라이싱을 사용한다. 대괄호 안에 클론(:)을 넣어서 시작 인덱스와 끝 인덱스를 설정한다. 주의! 끝 인덱스는 실제 인덱스보다 1을 더 크게 설정
a=[1,2,3,4,5];
print(a[1:3]);
# 출력 2,3
리스트를 초기화하는 방법 중 하나. 대괄호 안에 조건문과 반복문을 적용하여 리스트를 초기화. 2차원 리스트를 초기화 할때 효과적으로 사용
# 좋은 예
a=[[0]*m for _ in range(n)]
# 나쁜 예
# 전체 리스트 안에 포함된 각 리스트가 모두 같은 객체로 인식
a = [[0] * m] * n
반복을 수행하되 변수의 값을 무시하고자 할 때 언더바를 사용.
a = [1, 2, 3];
a.append(4);
print(a);
# [1, 2, 3, 4]
print(a);
# [1, 2, 3, 4];
print(a.sort(reverse=True);
# [4, 3, 2, 1]
a = [4, 3, 2, 1];
a.reverse();
print(a);
# [1, 2, 3, 4]
a.insert(2, 2);
print(a);
# [1, 2, 2, 3, 4]
print(a);
# [1, 2, 2, 3, 4];
print(a.count(2));
# 2
a.remove(2);
print(a);
# [1, 3, 4];
.
출처 : https://www.youtube.com/watch?v=m-9pAwq1o3w&list=PLRx0vPvlEmdAghTr5mXQxGpHjWqSz0dgC