[파이썬] 프로그래밍의 기초, 자료형 - 3 (딕셔너리)
본문 바로가기
파이썬 시작하기

[파이썬] 프로그래밍의 기초, 자료형 - 3 (딕셔너리)

by 동도리동동 2023. 3. 10.
반응형

1. 딕셔너리 자료형

딕셔너리(Dictionary)는 대응 관계를 KEY와 VALUE로 나타내는 자료형 입니다. 예를 들어, '이름' = '홍길동'으로 대응할 수 있고, 'BASEBALL' = '야구' 이런식으로도 대응을 할 수 있습니다. KEY를 통해 VALUE를 확인할 수 있어서, 순차적으로 모든 값을 확인해보지 않아도 된다는 장점이 있습니다. 

 

  • 딕셔너리를 생성하는 여러가지 방법
# 딕셔너리 생성
a = {}

a = {1:'hi'}

a = {'a': [1,2,3]}

a = {'name':'pey', 'phone':'01012345678', 'birth':'1225'}

 

  • 딕셔너리 추가, 삭제

KEY값을 통해서 딕셔너리에 추가, 삭제가 가능합니다.

# 딕셔너리에 추가
a = {1:'a'}
a[2] = 'b'
a				# {1:'a', 2:'b'} 출력


a['name'] = 'pey'
a				# {1:'a', 2:'b', 'name':'pey'} 출력


a[3] = [1,2,3]
a				# {1:'a', 2:'b', 'name':'pey', 3:[1,2,3]} 출력




# 딕셔너리에서 삭제
del a[1]		# KEY=1 인 쌍 삭제
a				# {2:'b', 'name':'pey', 3:[1,2,3]} 출력

 

  • 딕셔너리 사용하기
# KEY를 사용해 VALUE 얻기
grade = {'pey':10, 'alice':99}
grade['pey']		# 10 출력
grade['alice']		# 99 출력


a = {1:'a', 2:'b'}
a[1]				# 'a' 출력
a[2]				# 'b' 출력



# KEY가 중복된 경우
a = {1:'a', 1:'b'}
a					# {1:'b'} 출력


# KEY가 리스트인 경우 Error
a = {[1,2]:'hi'}	# TypeError: unhashble type: 'list' 출력

a = {(1,2):'hi'}	# 튜플은 KEY로 사용가능

 

  • 딕셔너리 관련 함수 - keys(),  values(), items(), clear(), get(), in()
# 1. KEY 리스트 만들기 - keys()
a = {'name':'pey', 'phone':'01012345678', 'birth':'1225'}
a.keys()			# dict_keys(['name', 'phone', 'birth']) 출력

# dict_keys 객체는 리스트 함수 사용 불가하다. 
# (append, insert, pop, remove, sort 함수 사용 불가)

list(a.keys())		# dict_keys 객체를 리스트로 변환



# 2. VALUE 리스트 만들기 - values()
a = {'name':'pey', 'phone':'01012345678', 'birth':'1225'}
a.values()			# dict_values(['pey', '01012345678', '1225']) 출력



# 3. KEY, VALUE 쌍 얻기 - items()
a = {'name':'pey', 'phone':'01012345678', 'birth':'1225'}
a.items()			
# dict_items([('name','pey'), ('phone','01012345678'), ('birth','1225')]) 출력



# 4. KEY, VALUE 쌍 모두 지우기 - clear()
a = {'name':'pey', 'phone':'01012345678', 'birth':'1225'}
a.clear()
a					# {} 출력



# 5. KEY로 VALUE 얻기 - get()
a = {'name':'pey', 'phone':'01012345678', 'birth':'1225'}
a.get('name')		# 'pey' 출력

print(a.get('NO_KEY'))		# None 출력
print(a['NO_KEY'])			# KeyError 출력
a.get('NO_KEY', 'NO')		# 'NO' 출력



# 6. KEY가 딕셔너리에 존재하는지 조사 - in()
a = {'name':'pey', 'phone':'01012345678', 'birth':'1225'}
'name' in a					# True
'email' in a				# False

 

 

 

※ 파이썬의 다른 자료형 보러가기

[파이썬] 프로그래밍의 기초, 자료형 - 1 (숫자형, 문자열)

 

[파이썬] 프로그래밍의 기초, 자료형 - 1 (숫자형, 문자열)

'파이썬 프로그래밍'을 시작하며 AI 관련 포스팅을 많이 올리다보니 앞으로도 개발자로 살아가려면, AI를 배우지 않으면 안되겠다는 생각이 많이 들었습니다. 그동안은 회사에서도 AI에 관해 넘

dongdoridong.tistory.com

 

[파이썬] 프로그래밍의 기초, 자료형 - 2 (리스트, 튜플, 불)

 

[파이썬] 프로그래밍의 기초, 자료형 - 2 (리스트, 튜플, 불)

숫자형과 문자열 자료형은 아래의 이전 포스팅을 참고해주세요. [파이썬] 프로그래밍의 기초, 자료형 - 1 (숫자형, 문자열) [파이썬] 프로그래밍의 기초, 자료형 - 1 (숫자형, 문자열) '파이썬 프로

dongdoridong.tistory.com

 

 

 

 

 

반응형

댓글