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이 가진 값을 알려면 아래처럼 입력한다.
이처럼 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() 함수를 사용합니다
myDict의 값이 두 개 존재하므로 2를 출력하게 됩니다. 다음으로 딕셔너리 키를 삭제하는 방법입니다.
! 딕셔너리 내부 key 값 삭제하기
만약 딕셔너리의 값 중 삭제하고 싶다면 아래처럼
del()를 사용합니다. 아래 예제는 name 키와 밸류를 삭베하는 방법이죠.
del(myDict['name'])
이제 name 키 값이 삭제되었습니다.
여기까지 파이썬의 딕셔너리(dictionary) 타입에 대하여 알아보았습니다.