리스트 : 값 변경, 추가, 삭제 가능하다. 안에 다양한 자료형을 저장할 수 있다.
>>> person = ['james', 17, 175.3, True]
>>> person
['james', 17, 175.3, True]
빈 리스트 만들기
리스트 = []
리스트 = list()
range()를 이용하여 리스트 만들기 : 범위를 지정해준다.
리스트 = list(range(5,12)) -> 5부터 11까지. 시작점을 지정하지 않으면 0이 디폴트다.
range에 증가폭 지정하기
리스트 = list(range(시작, 끝, 증가폭))
>>> c = list(range(-4, 10, 2))
>>> c
[-4, -2, 0, 2, 4, 6, 8]
증가폭을 음수로 지정하면 해당 값만큼 숫자 감소
>>> d = list(range(10, 0, -1))
>>> d
[10, 9, 8, 7, 6, 5, 4, 3, 2, 1]
튜플은 요소가 절대 변경되지 않고 유지되어야 할 때 사용한다.
튜플을 만든 상태에서 요소를 변경하게 되면 에러가 발생하게 된다. 따라서 요소를 실수로 변경하는 상황을 방지할 수 있다.
튜플 : 값 변경, 추가, 삭제 불가. ()로 생성, 리스트처럼 여러 자료형을 섞어 저장 가능하다.
튜플 = (값, 값, 값)
튜플 = 값, 값, 값
range로 튜플 만들기 : 리스트와 동일
리스트를 튜플로, 튜플을 리스트로 만들기
>>> a = [1, 2, 3]
>>> tuple(a)
(1, 2, 3)
>>> b = (4, 5, 6)
>>> list(b)
[4, 5, 6]
요소가 한 개 들어있는 튜플 만들기
튜플 = (값, )
튜플 = 값,
>>> (38, )
(38,)
>>> 38,
(38,)
리스트와 튜플 안에 문자열을 넣어 문자 리스트, 문자 튜플 생성할 수 있다.
>> list('Hello') ['H', 'e', 'l', 'l', 'o'] >> tuple('Hello') ('H', 'e', 'l', 'l', 'o')
리스트와 튜플로 한 번에 여러 개의 변수를 만든다. 이때 변수의 개수와 리스트, 튜플의 요소 개수는 같아야 한다.
>> a, b, c = [1, 2, 3] >> print(a, b, c) 1 2 3 >> d, e, f = (4, 5, 6) >> print(d, e, f) 4 5 6
리스트와 튜플 변수로도 변수 여러 개를 만들 수 있다. 리스트와 튜플의 요소를 변수 여러 개에 할당하는 것을 리스트 언패킹(list unpacking), 튜플 언패킹(tuple unpacking)이라고 한다.
>> x = [1, 2, 3] >> a, b, c = x >> print(a, b, c) 1 2 3 >> y = (4, 5, 6) >> d, e, f = y >> print(d, e, f) 4 5 6
input().split()은 리스트를 반환한다. 그래서 리스트 언패킹 형식으로 입력 값을 변수 여러 개에 저장할 수 있었다.
>> input().split() 10 20 ['10', '20'] >> x = input().split() 10 20 >> a, b = x # a, b = input().split()과 같음 >> print(a, b) 10 20
리스트 패킹(list packing)과 튜플 패킹(tuple packing)은 변수에 리스트 또는 튜플을 할당하는 과정을 뜻한다.
a = [1, 2, 3] # 리스트 패킹 b = (1, 2, 3) # 튜플 패킹 c = 1, 2, 3 # 튜플 패킹