시퀀스 데이터 타입(Sequence Types)은 순서
가 있으며 인덱싱
이 가능하다. 기본적인 시퀀스 데이터 타입에는 list
, tupel
, range
가 있다.
인덱싱
: 순서(index)로 값에 접근하는 것0
부터 시작하며 -1
로 시퀀스 타입의 맨 마지막 요소에 접근할 수 있다list
, tupel
은 슬라이싱
이 가능하다.슬라이싱
: 순서(index)로 일부분만 선택하는 것[대괄호]
에 저장할 숫자나 문자열 등의 데이터를 쉼표(,)로 분리해 담는다.a = [1, 2, 3, 4, 5]
a
# [1, 2, 3, 4, 5]
a[0] # 1
a[-1] # 5
a = [1, 2, 3, [4, 5]]
a[3] # [4, 5]
a[3][0] # 4
a[3][1] # 5
:
기준으로 앞의 index는 포함, 뒤의 index는 포함하지 않는다.a = [1, 2, 3, 4, 5]
a[1:3] # [2, 3] => 1번 인덱스는 포함하고 3번 인덱스는 포함하지 않음
+
연산자를 통해 하나의 리스트로 합칠 수 있다.a = [1, 2, 3]
b = [4, 5, 6]
a+b # [1, 2, 3, 4, 5, 6]
len(a) # 3
a = [1, 2, 3, 4, 5]
a[2] = 33
a # [1, 2, 33, 4, 5]
del a[2]
a # [1, 2, 4, 5]
(괄호)
에 저장할 데이터 값을 쉼표(,)로 분리해 담는다a = (1, 2, 3, 4, 5)
a
# (1, 2, 3, 4, 5)
a[0] # 1
a[-1] # 5
a = (1, 2, 3, (4, 5))
a[3] # (4, 5)
a[3][0] # 4
a[3][1] # 5
슬라이싱
사용법, +
연산자 활용 합치기, 내장함수 len()
로 길이를 구하는 것은 list
와 같다!a = (1, 2, 3, [4, 5])
a[3][0] = 44
a # (1, 2, 3, [44, 5])
인덱싱
, 슬라이싱
, 내장함수 len()
을 이용한 길이 확인은 가능하다.for 반복문
에서 자주 사용된다.range(시작, 종료+1)
로 생성할 수 있다.list
형으로 바꿔서 출력한다 r = range(0, 10) # 0부터 9까지 (10 전까지)
list(r) # [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
r[0] # 0
r[-1] # 9
len(r) # 10
r[:3] # range(0, 3) => 0, 1, 2
r[3:] # range(3, 10)