상세 컨텐츠

본문 제목

12. 파이썬 컬렉션 - Dictionary

프로그래밍 언어/Python(파이썬)

by 알파고제로 2023. 10. 13. 10:38

본문

2. Dictionary

■ 개요

  • 파이썬의 가장 강력한 데이터 컬렉션
  • 파이썬에서 빠르게 데이터베이스 같은 연산을 가능하게 함
  • 다른 언어에서는 다른 이름으로 불림
    • Associative Arrays (연관 배열)  - Perl / PHP
    • Properties or Map or HashMap(속성, 맵, 해쉬맵)  - Java
    • Property Bag (속성 가방)  - C# / .Net

■ 특징

  • {} 기호 혹은 dict() 를 이용해 생성
  • key : value의 쌍으로 이루어짐. 변환되는 값은 Key로 사용 불가(예 : list)
  • Key를 통해 Value를 얻는다 
  • {Key1:Value1, Key2:Value2, Key3:Value3 ...}
dic = {'name':'Gildong', 'phone':'0119993323', 'birth': '1118’}
  • 키 값이 반드시 문자열일 필요 없으며 변경 불가능한 데이터만 키가 될 수 있다.
    (immutable 데이터인 문자열, 튜플, 숫자 값은 키가 될 수 있으나, 리스트는 키가 될 수 없다.)
  • 사전변수명[키](ex: dic[‘address’]) 형식으로 찾을 경우 찾는 키가 없으면 예외를 발생한다. 
  • get 함수는 키가 없을 때 예외를 발생하는 대신 None을 리턴한다.

■ Dictionary 관련 함수

함수명 설명
min() 키 값 중에서 최솟값 (사전적 순서)
max() 키 값 중에서 최대값 (사전적 순서)
get(키 [, 값]) 특정 키를 통해 값을 얻음. 해당 키가 없으면 디폴값으로 대체
keys()  값을 리스트로 얻어옴
values() 밸류값을 리스트로 얻어옴
items() 키와 밸류의 쌍을 튜플로 얻어옴
sorted(iterable, *,
    key=None, reverse=False)
내장함수, 딕셔너리의 키를 오름차순 정렬
# 딕셔너리 생성
x = {'name':'홍길동', 'age' : 32}

y = dict() # {}
y['name'] = '전우치'   # 문자열을 키로 하여 데이터 삽입
y['phone'] = '010-2222-3333'
y['age'] = 28

print(y)
print('나이 :' ,y['age'])

z = {1 : 'Korea'}
z[2] = '한국사람'
z[(1, 2)] = '서울시’ 	# 튜플을 키로 하여 값을 삽입
z[1]        		# 키를 통해 값을 출력
z[(1, 2)]   		# 키를 통해 값을 출력
y = dict() 		# {}도 가능
y['name'] = '전우치'   	# 문자열을 키로 하여 데이터 삽입
y['phone'] = '010-2222-3333'
y['age'] = 28

for key in y.keys(): 
	print(key)

for value in y.values():
 	print(value)

y.items() 		# key, value를 쌍으로 한 튜플을 반환

print('name' in y)
print('email' in y)

# min() 함수
score = {'eng' : 100, 'java' : 98, 'japan' : 99}
max(score)
max(score.values())

'프로그래밍 언어 > Python(파이썬)' 카테고리의 다른 글

13. 파이썬 컬렉션 - Tuple  (0) 2023.10.13
11. 파이썬 컬렉션 - List  (0) 2023.10.13
10. 파이썬 문자열 다루기  (0) 2023.09.20

관련글 더보기

댓글 영역