웹개발 및 최신 테크 소식을 전하는 블로그, 웹이즈프리

HOME > python

Python 딕셔너리 타입 알아보기

Last Modified : 2020-09-18 / Created : 2017-10-24
6,411
View Count
Python 언어를 배우게되면 다소 생소한 데이터형, 자료타입이 존재합니다. 그 중에서 파이썬의 자료타입 중 하나로 자바스크립트의 객체와 비슷하게 동작하는 dictionary, 딕셔너리(딕트)에 대하여 알아봅니다.




# Python dictionary, 딕셔너리는?


외형적으로 잘 아는 객체와 동일한 모습이며 거의 비슷하게 동작합니다. 아래에서는 딕셔너리를 생성하고 조회하는 방법들에 대하여 자세히 알아봅니다.


! Python, Dictionary 딕셔너리 생성하기

우선 딕셔너리를 생성하는 방법을 알아봅니다. 아래는 리터럴 방법입니다. myDict 이름의 딕셔너리를 생성 후 타입을 확인해보려고 합니다.
myDict = {}

그 전에 또 다른 방법으로 dict()를 사용할 수 있습니다. 둘 다 동일한 타입인 딕셔너리로 선언됩니다.
myDict = dict()

둘 다 dict 타입인지 확인하기 위해서 type() 내장함수를 사용해 확인할 수 있습니다.
>>> type(myDict)

<class 'dict'>

여기까지 딕셔너리를 생성하는 방법을 알아보았다. 그럼 이를 조회하는 방법을 알아보자.


! Python 딕셔너리 조회하기

아래
처럼 딕셔너리가 있는 경우에 이를 조회하여 키 및 밸류를 알아봅니다.
myDict = {'name': 'wf', 'url': 'http://webisfree.com'}

이제 name이 가진 값을 알려면 아래처럼 입력한다.
>>> myDict['name']

'wf'
이처럼 wf기 출력됩니다. 만약 특정 키가 존재하는지 그 여부를 확인할 경우 in 키워드를 사용하여 빠르고 쉽게 확인이 가능하죠. 예를들어 아래를 봐주세요.
'name' in myDict

name이라는 키가 존재하므로 True를 반환하게 됩니다.


! python dictionary 타입 string 내부에 interpolation 사용하기


아래와 같이 site 이름의 딕셔너리가 있는 경우 문자열 내부에서 사용하는 방법입니다.
site = {
  'no': 1,
  'url': 'webisfree.com',
  'name': '웹이즈프리'
}

자주 사용되는 방법으로 % 기호를 사용합니다.
mySite = '사이트 주소는 %{url}' % site

참고로 비슷한 방법으로 format()을 사용하는 방법이 있습니다.
mySite = '사이트 이름은 {2}'.format(1, 'webisfree.com', '웹이즈프리')

인덱스 값을 {}의 값으로 추가하면 됩니다.


! python 딕셔너리 key, value만 가져오기


또한 딕셔너리는 key 또는 value만 조회할 수 있습니다. 이는 매우 편리한 기능인데 특히 키 또는 밸류 하나의 값만 찾는 경우 매우 유용합니다.
myDict.keys()

myDict.values()

추가로 만약 몇 개의 값을 갖고 있는지 알려면 len() 함수를 사용합니다
len(myDict)

// 출력결과
2

myDict의 값이 두 개 존재하므로 2를 출력하게 됩니다. 다음으로 딕셔너리 키를 삭제하는 방법입니다.


! 딕셔너리 내부 key 값 삭제하기

만약 딕셔너리의 값 중 삭제하고 싶다면 아래처럼 del()를 사용합니다. 아래 예제는 name 키와 밸류를 삭베하는 방법이죠.
del(myDict['name'])

이제 name 키 값이 삭제되었습니다.


여기까지 파이썬의 딕셔너리(dictionary) 타입에 대하여 알아보았습니다.

Previous

Python 문자열 자르기 및 합치기, split()

Previous

Python 리스트(list) 배열 하나로 합치는 방법