Python / 자료형 / 사전(dict)
목차
사전(dict)
사전은 집합의 일종으로, 키와 값이 하나의 데이터를 만듭니다. 순서가 없고 중복된 데이터를 갖지 않아서, 중복 데이터를 만드는 +, *를 사용할 수 없지만, 키를 이용하여 인덱스기호([])를 사용할 수 있습니다.
사전 만들기
사전은 집합과 마찬가지로 중괄호로 만듭니다. 키를 앞에, 값을 뒤에 쓰고, 구분은 콜론(:)으로 합니다. 데이터의 구분은 쉼표(,)로 합니다.
>>> jb = {1:"one", 2:"two", 3:"three"} >>> jb {1: 'one', 2: 'two', 3: 'three'} >>> type(jb) <class 'dict'>
리스트, 집합, 사전은 키가 될 수 없습니다. 값은 모든 자료형이 가능합니다.
빈 사전 만들기
>>> jb = {} >>> type(jb) <class 'dict'>
사전의 길이 구하기
>>> jb = {1:"one", 2:"two", 3:"three"} >>> len(jb) 3
키가 있는지 확인하기
>>> jb = {1:"one", 2:"two", 3:"three"} >>> 1 in jb True >>> 5 in jb False
키가 없는지 확인하기
>>> jb = {1:"one", 2:"two", 3:"three"} >>> 1 not in jb False >>> 5 not in jb True
아이템 추가하기
>>> jb = {1:"one", 2:"two", 3:"three"} >>> jb[4] = "four" >>> jb {1: 'one', 2: 'two', 3: 'three', 4: 'four'}
아이템 수정하기
>>> jb = {1:"one", 2:"two", 3:"three"} >>> jb[1] = "hana" >>> jb {1: 'hana', 2: 'two', 3: 'three'}
아이템 삭제하기
>>> jb = {1:"one", 2:"two", 3:"three"} >>> del jb[2] >>> jb {1: 'one', 3: 'three'}
아이템 모두 지우기
>>> jb = {1:"one", 2:"two", 3:"three"} >>> jb.clear() >>> jb {}
아이템 출력하기
.items()는 모든 아이템을, .keys()는 모든 키를, .values()는 모든 값을 반환합니다.
>>> jb = {1:"one", 2:"two", 3:"three"} >>> jb.items() dict_items([(1, 'one'), (2, 'two'), (3, 'three')]) >>> jb.keys() dict_keys([1, 2, 3]) >>> jb.values() dict_values(['one', 'two', 'three'])
사전에 사전 추가하기
.update()로 사전에 사전을 추가할 수 있습니다.
>>> jb1 = {1:"one", 2:"two", 3:"three"} >>> jb2 = {4:"four", 5:"five", 6:"six"} >>> jb1.update(jb2) >>> jb1 {1: 'one', 2: 'two', 3: 'three', 4: 'four', 5: 'five', 6: 'six'}