본문 바로가기

프로그래밍/Python

시퀀스 자료형(배열)

시퀀스

리스트, 튜플, range, 문자열같이 연속적으로 값이 저장되어있는 자료형

리스트, 튜플 모두 여러 값을 넣은 배열

리스트는 요소를 변경, 추가, 삭제가 가능하지만 튜플은 불가능

리스트, 튜플 둘 다 한 리스트와 튜플에 여러 자료형을 섞어서 저장 가능

 

 

리스트와 튜플 생성

a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
b = list(range(10))
print(a, b, sep='\n')

x = (0, 1, 2, 3, 4, 5, 6, 7, 8, 9)
y = tuple(range(10))
print(x, y, sep='\n')

##출력
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
(0, 1, 2, 3, 4, 5, 6, 7, 8, 9)
(0, 1, 2, 3, 4, 5, 6, 7, 8, 9)

 

리스트와 튜플 패킹 언패킹

x =[1, 2, 3]  #패킹
print(x)

a, b, c = x   #언패킹
print(a, b, c)

y = list('hello') #list에 문자열 할당
print(y)

##출력
[1, 2, 3]
1 2 3
['h', 'e', 'l', 'l', 'o']

 

 

시퀀스 안에 특정 값이 있는지 확인(튜플, range, 문자열도 가능)

a = list(range(0, 100, 10))
print(a)
print(40 in a)
print(75 in a)

##출력
[0, 10, 20, 30, 40, 50, 60, 70, 80, 90]
True
False

 

시퀀스 합치기

a = list(range(10))
b = list(range(10,20))
print(a)
print(b)
c = a + b
print(c)

##출력
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
[10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]

 

시퀀스 반복

a = list(range(10))
a = a*3
print(a)

##출력
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

 

리스트 요소 삭제

a = list(range(0,100,10))
print(len(a))
print(a)
del a[3]
print(len(a))
print(a)

##출력
10
[0, 10, 20, 30, 40, 50, 60, 70, 80, 90]
9
[0, 10, 20, 40, 50, 60, 70, 80, 90]

 

시퀀스 슬라이싱

a = list(range(0,100,10))
print(a)
print(a[3:6])

b = 'hello python'
print(b)
print(b[3:9])


##출력
[0, 10, 20, 30, 40, 50, 60, 70, 80, 90]
[30, 40, 50]
hello python
lo pyt

[n : m] -> n번째 인덱스 부터 m-1번째 인덱스 까지(n번째 인덱스부터 (m-n)개 출력)

[n : m : o] -> n번째 인덱스 부터 o씩 증가시키면서 m-1까지

[ : m] -> 처음부터 m-1까지

[n : ] -> n번째 인덱스부터 마지막까지

'프로그래밍 > Python' 카테고리의 다른 글

리스트, 튜플 응용  (0) 2020.03.13
딕셔너리  (0) 2020.03.13
값 비교와 객체 비교, 값을 boolean  (0) 2020.03.13
print, sep, end 활용, 문자열 포맷  (0) 2020.03.13
input 입력, 여러개 값 입력  (0) 2020.03.13