10.1 리스트 만들기
>>> a = [10, 20, 30, 40, 50]
>>> a
[10, 20, 30, 40, 50]
[]로 값을 묶어주면 리스트가 된다. 각 값은 ,로 구분해준다.
리스트에 저장된 각 값은 요소(element)라고 한다.
10.1.1 리스트에 여러 가지 자료형 저장하기
하나의 리스트에 여러 가지 자료형을 섞어서 저장해도 된다.
>>> person = ['홍길동', 20, 180, True]
>>> person
['홍길동', 20, 180, True]
한 객체에 관련된 정보들을 하나로 묶어서 관리하기에 편리하다.
10.1.2 빈 리스트 만들기
>>> a = []
>>> a
[]
>>> b = list()
>>> b
[]
빈 리스트를 만들어 놓은 후에 새 값을 추가하는 방식으로 활용한다.
10.1.3 range를 사용하여 리스트 만들기
range()는 연속된 숫자를 생성하는 함수.
range(10) : 0부터 9까지 숫자를 생성한다.
>>> range(10)
range(0, 10)
# 리스트 = list(range(횟수))
# == list(range(0, 횟수))
>>> a = list(range(10))
>>> a
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
# 리스트 = list(range(시작, 끝))
>>> b = list(range(3, 7))
>>> b
[3, 4, 5, 6]
# range에 증가폭을 지정하면 해당 값만큼 증가하면서 숫자를 생성.
# 리스트 = list(range(시작, 끝, 증가폭))
>>> c = list(range(-4, 10, 2))
>>> c
[-4, -2, 0, 2, 4, 6, 8]
10.2 튜플 사용하기
튜플은 리스트처럼 요소를 일렬로 저장하지만, 안에 저장된 요소를 변경, 추가, 삭제할 수 없다.
-> 읽기 전용 리스트라고 생각하자.
# 튜플 = (값, 값, 값)
# 튜플 = 값, 값, 값
>>> a = (38, 21, 53, 63, 26)
>>> a
(38, 21, 53, 63, 26)
>>> a = 38, 21, 53, 63, 26
>>> a
(38, 21, 53, 63, 26)
튜플토 리스트처럼 여러 자료형을 동시에 저장할 수 있다.
>>> person = ('홍길동', 20, 180, True)
>>> person
('홍길동', 20, 180, True)
튜플은 요소가 절대 변경되지 않고 유지되어야 할 때 사용한다.
튜플을 만든 상태에서 요소를 변경하면 에러가 발생한다.
10.2.1. 요소가 한 개 들어있는 튜플 만들기
# 값 한 개를 괄호로 묶으면 튜플이 아니라 그냥 값이 된다.
>>> (38)
38
# 요소가 한개인 튜플 만들기
# 튜플 = (값, )
# 튜플 = 값,
>>> (38, )
(38, )
>>> 38,
(38, )
값 한개짜리 튜플이 필요한 이유 : 함수를 사용할 때 값이 아닌 튜플을 넣어야 하는 경우가 발생하는데, 이 때 값은 한개지만 튜플 형식으로 넣어야 할 때 (값, ) 형태로 넣어준다.
10.2.2 range를 사용하여 튜플 만들기
# 튜플 = tuple(range(횟수))
>>> a = tuple(range(4))
>>> a
(0, 1, 2, 3)
# 튜플 = tuple(range(0, 횟수))
>>> a = tuple(range(0, 4))
>>> a
(0, 1, 2, 3)
# 튜플 = tuple(range(시작, 끝, 증가폭))
>>> a = tuple(range(-2, 12, 4))
>>> a
(-2, 2, 6, 10)
10.2.3 튜플<->리스트 변경
# 리스트 -> 튜플
>>> a = [1, 2, 3]
>>> tuple(a)
(1, 2, 3)
# 튜플 -> 리스트
>>> a = (1, 2, 3)
>>> list(a)
[1, 2, 3]
+) list와 tuple안에 문자열을 넣으면
문자열의 문자 하나하나가 리스트, 튜플의 요소로 생성된다.
>>> a = list('Hello')
>>> a
['H', 'e', 'l', 'l', 'o']
>>> a = tuple('Hello')
>>> a
('H', 'e', 'l', 'l', 'o')
+) 리스트와 튜플 사용해서 변수 여러 개 만들기
>>> a, b, c = [10, 20, 40]
>>> print(a, b, c)
10 20 40
>>> d, e, f = (4, 7, 9)
>>> print(d, e, f)
4, 7, 9
리스트와 튜플의 요소를 변수 여러 개에 할당하는 것을 리스트 언패킹, 튜플 언패킹이라 한다.
>>> 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
>>> print(a, b)
10 20