List vs Tuple

3914 단어 pythonpython

List

리스트는 말 그대로 목록이라는 뜻이며 값을 일렬로 늘어놓은 형태이다.

🔸 값을 저장할 때 [ ](대괄호)로 묶어주고, 각 값은 ,(콤마)로 구분한다.

이 때 리스트에 저장된 각 값을 요소(element)라고 부른다.

>>> a = [38, 21, 53, 62, 19]
>>> a
[38, 21, 53, 62, 19]

🔸 리스트는 문자열, 정수, 실수, 불 등 모든 자료형을 저장할 수 있으며 자료형을 섞어서 저장해도 된다.

>>> person = ['james', 17, 175.3, True]
>>> person
['james', 17, 175.3, True]

range를 사용하여 리스트 만들기

🔸 range는 연속된 숫자를 생성한다.

  • range(횟수)
>>> range(10)
range(0, 10)

지정한 횟수 숫자는 포함되지 않는다. 따라서 0부터 9까지의 숫자를 생성한다.

  • 리스트 = list(range(횟수))
>>> a = list(range(10))
>>> a
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

0부터 9까지 들어있는 리스트가 생성된다.

  • 리스트 = list(range(시작, 끝))
>>> b = list(range(5, 12))
>>> b
[5, 6, 7, 8, 9, 10, 11]

range는 시작하는 숫자와 끝나는 숫자를 지정할 수도 있다. 이때도 끝나는 숫자는 생성되는 숫자에 포함되지 않는다.

  • 리스트 = list(range(시작, 끝, 증가폭))
>>> c = list(range(-4, 10, 2))
>>> c
[-4, -2, 0, 2, 4, 6, 8]

증가폭을 지정하면 해당 값만큼 증가하면서 숫자를 생성한다.

만약 증가폭을 음수로 지정하면 해당 값만큼 숫자가 감소한다.


Tuple

🔸 튜플은 리스트처럼 요소를 일렬로 저장하지만, 안에 저장된 요소를 변경, 추가, 삭제할 수 없다.

한마디로 읽기 전용 리스트인 셈이다.

변수에 값을 저장할 때 ( )(괄호)로 묶어주고, 각 값은 ,(콤마)로 구분해 준다. 괄호로 묶지 않고 값만 콤마로 구분해도 튜플이 된다.

튜플 = (값, 값, 값)
튜플 = 값, 값, 값
ex1)
>>> a = (38, 21, 53, 62, 19)
>>> a
(38, 21, 53, 62, 19)
ex2)
>>> a = 38, 21, 53, 62, 19
>>> a
(38, 21, 53, 62, 19)

ex1 은 값을 괄호로 묶은 뒤 변수에 저장해서 튜플을 만들었고
ex2 는 괄호를 사용하지 않고 튜플을 만들었다.

🔸 튜플도 리스트처럼 여러 자료형을 섞어서 저장해도 된다.

>>> person = ('james', 17, 175.3, True)
>>> person
('james', 17, 175.3, True)

요소가 한 개 들어있는 튜플

>>> (38)
38

만약 위와 같이 값 한 개를 괄호로 묶으면 튜플이 아니라 그냥 값이 된다.

요소가 한 개인 튜플을 만들 때는 ( ) (괄호) 안에 값 한 개를 넣고 ,(콤마)를 붙이거나
괄호로 묶지 않고 값 한 개에 ,(콤마)를 붙여도 된다.

>>> (38, )
(38,)
>>> 38,
(38,)

range를 사용하여 튜플 만들기

리스트와 동일한 방법으로 만들 수 있다.

  • 튜플 = tuple(range(횟수))
>>> a = tuple(range(10))
>>> a
(0, 1, 2, 3, 4, 5, 6, 7, 8, 9)
  • 튜플 = tuple(range(시작, 끝))
>>> b = tuple(range(5, 12))
>>> b
(5, 6, 7, 8, 9, 10, 11)
  • 튜플 = tuple(range(시작, 끝, 증가폭))
>>> c = tuple(range(-4, 10, 2))
>>> c
(-4, -2, 0, 2, 4, 6, 8)

튜플을 리스트로, 리스트를 튜플로

다음과 같이 tuple 안에 리스트를 넣으면 새 튜플이 생긴다.

>>> a = [1, 2, 3]
>>> tuple(a)
(1, 2, 3)

반대로 list 안에 튜플을 넣으면 새 리스트가 생성된다.

>>> b = (4, 5, 6)
>>> list(b)
[4, 5, 6]

그래서 차이점은?

리스트를 생성할 때는 [ ](대괄호)를 사용하고, 튜플을 생성할 때는 ( )(괄호)를 사용한다.

✅ 튜플은 안에 저장된 요소를 변경, 추가, 삭제할 수 없으므로 요소가 그대로 유지되어야 할 때 사용한다.



참고 : https://dojang.io/mod/page/view.php?id=2201

좋은 웹페이지 즐겨찾기