[Python] Set vs. Dictionary / List vs. Tuple

난나다·2022년 6월 23일
0

Python 정리

목록 보기
4/10

Set

>>> s = {1, 2, 3}
>>> s
{1, 2, 3}
>>> type(s)
<class 'set'>
  • 수학에서 이야기하는 집합과 비슷합니다.
  • 순서가 없고, 집합 안에서 unique한 값을 가집니다.(중복 X)
  • mutable 객체입니다.
    (mutable은 값이 변한다, immutable은 값이 변하지 않는다는 의미)

Dictionary

>>> dict = {1: 5, 2: 3}   # int 사용
>>> dict
{1: 5, 2: 3}
>>> dict = {(1,5): 5, (3,3): 3} # tuple사용
>>> dict
{(1, 5): 5, (3, 3): 3}
>>> dict = { 3.6: 5, "abc": 3} # float 사용
>>> dict
{3.6: 5, 'abc': 3}
>>> dict = { True: 5, "abc": 3} # bool 사용
>>> dict
{True: 5, 'abc': 3}
  • immutable한 키(key)와 mutable한 값(value)으로 맵핑되어 있는 순서가 없는 집합입니다.
  • 값은 중복될 수 있지만, 키가 중복되면 마지막 값으로 덮어씌워집니다.
  • 순서가 없기 때문에 인덱스로는 접근할 수 없고, 키로 접근할 수 있습니다.
  • mutable한 객체이므로 키로 접근하여 값을 변경할 수 있습니다.
  • 딕셔너리 선언할 때는 빈 중괄호를 사용합니다.(set 중괄호를 이용하지만 빈중괄호로 선언하면 type이 dict이 됩니다.)
  • for문을 통해 딕셔너리를 for문을 돌리면 key값이 할당됩니다.(순서는 임의적이다 = 같은 순서를 보장할 수 없다.)

list

>>> [1, 3, 5, 7]
[1, 3, 5, 7]
>>> a = [1, 3, 5, 7]
>>> type(a)
<class 'list'>
  • 순서가 있는 수정가능한 객체의 집합입니다.
  • 수정, 삭제, 추가가 가능합니다.
  • [] 대괄호로 작성되어지며, 내부 원소는 , 로 구분됩니다.
  • 0부터 시작하는 인덱스로 접근 가능합니다.
  • 인덱스 범위를 벗어나면 에러가 발생합니다.

Tuple

>>> t = (1, "korea", 3.5, 1)
>>> t
(1, 'korea', 3.5, 1)
>>> type(t)
<class 'tuple'>
  • 불변한 순서가 있는 객체의 집합입니다.
  • list형과 비슷하지만 한 번 생성되면 값을 변경할 수 없습니다.
  • list와 마찬가지로 다양한 타입이 함께 포함될 수 있습니다.
  • 순서가 있어 인덱스로 접근이 가능합니다.
  • 하나의 원소만 존재하는 경우 tuple이 되지 않습니다.

0개의 댓글