하나의 변수에 여러 값을 저장하는 자료형.
여러 데이터를 하나의 변수에 저장하는 기법을 시퀀스 자료형이라고 한다.
정수형, 실수형처럼 다양한 자료형을 포함시킬 수 있다.
인덱싱 - 리스트에 저장되어있는 값의 상대적인 주소(offset)
대부분의 프로그래밍 언어에서 배열과 같은 변수의 주소값은 0부터 시작한다.
colors = ['red', 'blue', 'green']
print(colors[0])
print(colors[2])
print(len(colors))
red
green
3
슬라이싱 - 전체 리스트에서 일부를 잘라낼 때 사용함.
<기본 문법>
변수명[시작 인덱스: 마지막 인덱스]
cities=['서울', '부산', '인천', '대구', '대전', '광주', '울산', '수원']
cities[0:6]
['서울', '부산', '인천', '대구', '대전', '광주']
<리버스 인덱스>
인덱스를 마지막 값부터 시작함
기존 인덱스와 달리 마지막 값부터 -1을 할당하여 첫 번째 값까지 역순으로 올라오는 방식이다.
cities[-8:]
['서울', '부산', '인천', '대구', '대전', '광주', '울산', '수원']
인덱스 범위를 넘어가는 슬라이싱
cities[:] # cities 변수의 처음부터 끝까지
cities[-50:50] # 범위를 넘어갈 경우 자동으로 최대 범위를 지정
['서울', '부산', '인천', '대구', '대전', '광주', '울산', '수원'
['서울', '부산', '인천', '대구', '대전', '광주', '울산', '수원']
<리스트의 증가값>
기본 문법: 변수명[시작 인덱스:마지막 인덱스: 증가값]
cities[::2]
cities[::-1]
['서울', '인천', '대전', '울산']['수원','울산','광주','대전','대구','인천','부산','서울']
- 리스트의 연산
1) 덧셈연산
2) 곱셈연산
3) in 연산 ★
color2=['orange', 'black', 'white']
'blue' in color 2
False
- 리스트 추가 및 삭제
| 함수 | 기능 | 용례 |
|---|---|---|
| append() | 새로운 값을 기존 리스트의 맨 끝에 추가 | color.append('white') |
| extend() | 새로운 리스트를 기존 리스트에 추가 (덧셈 연산과 같은 효과) | color.extend(['black', 'purple']) |
| insert() | 기존 리스트의 i번째 인덱스에 새로운 값을 추가. \n i번째 인덱스를 기준으로 뒤쪽의 인덱스는 하나씩 밀림 | color.insert(0, 'orange') |
| remove() | 리스트 내의 특정 값을 삭제 | color.remove('white') |
| del | 특정 인덱스값을 삭제 | del color[0] |
- 패킹과 언패킹
t = [1, 2, 3] #1, 2, 3을 변수 t에 패킹
a, b, c = t #t에 있는 값 1,2,3을 변수 a,b,c에 언패킹
print(t, a, b, c)
[1, 2, 3]1,2,3