λ”•μ…”λ„ˆλ¦¬(Dictionary)

2020. 12. 28. 17:03γ†πŸ“š Algorithm/πŸ“• Python 문법

λ°˜μ‘ν˜•

 


dic_name = {'이름':'μœ λ‚˜','phone':'01012345678','birth':'20201228'}
dic_wintable = {'κ°€μœ„':'보','λ°”μœ„':'κ°€μœ„','보':'λ°”μœ„'} 
	

 

이처럼 pythonμ—μ„œ 많이 μ‚¬μš©λ˜λŠ” λ”•μ…”λ„ˆλ¦¬(Dictionary) λŠ” κ°€μœ„λ°”μœ„λ³΄ ν…Œμ΄λΈ” 처럼 μ—¬λŸ¬ 값을 μ €μž₯ν•΄ 두고 ν•„μš”ν•œ 값을 κΊΌλ‚΄ μ“°κ±°λ‚˜ ,  

μ΄λ¦„ν‘œ 처럼 μ΄λ¦„ν‘œλ₯Ό μ΄μš©ν•˜μ—¬ 값을 κΊΌλ‚΄ μ‚¬μš©ν•˜λŠ” κΈ°λŠ₯을 ν•˜λŠ” 파이썬의 μžλ£Œν˜• μΈλ°μš”. 

주둜 Key - Value ν˜•μ‹μœΌλ‘œ ν•œμŒμ˜ μžλ£Œν˜•μœΌλ‘œ 이루어져 μžˆμ–΄μš” !

 

 

πŸ‘€ λ”•μ…”λ„ˆλ¦¬λŠ” μ–΄λ–»κ²Œ λ§Œλ“€ 수 μžˆμ„κΉŒμš”?


dic = {Key1:Value1, Key2:Value2, Key3:Value3, ...}

μœ„ μ½”λ“œλŠ” λ”•μ…”λ„ˆλ¦¬μ˜ κΈ°λ³Έ λͺ¨μŠ΅μž…λ‹ˆλ‹€.

주둜 Keyμ—λŠ” λ³€ν•˜μ§€ μ•ŠλŠ” 값을 , Valueμ—λŠ” λ³€ν•˜λŠ” κ°’/λ³€ν•˜μ§€ μ•ŠλŠ” 값을 λ„£λŠ”κ²Œ μΌλ°˜μ μž…λ‹ˆλ‹€!

 

1μ›”,2μ›”,3μ›”,4μ›”μ˜ λ‚ μ§œ 수λ₯Ό 가지고 λ”•μ…”λ„ˆλ¦¬λ₯Ό λ§Œλ“€μ–΄λ΄…μ‹œλ‹€.


days_month  = {
	'1μ›”' : 31,
    	'2μ›”' : 29,
    	'3μ›”' : 31,
    	'4μ›”' : 30
 }

print(days_month) # {'1μ›”': 31, '2μ›”': 29, '3μ›”': 31, '4μ›”' : 30} 좜λ ₯

 

 

βœ”οΈλ”•μ…”λ„ˆλ¦¬ keyμ—λŠ” λ¬Έμžμ—΄ , μˆ«μžν˜•, νŠœν”Œμ„ μ‚¬μš©ν•  수 있고, Valueμ—λŠ” λͺ¨λ“  μžλ£Œν˜•μ„ μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.


dic = { "μ•ˆλ…•" : ["Hello", "Hi", "μ•ˆλ…•ν•˜μ„Έμš”"] }

print(dic["μ•ˆλ…•"]) # ["Hello", "Hi", "μ•ˆλ…•ν•˜μ„Έμš”"] 좜λ ₯

 

πŸ‘€ λ”•μ…”λ„ˆλ¦¬ μˆ˜μ •ν•˜λŠ” 방법

λ”•μ…”λ„ˆλ¦¬ μΆ”κ°€/μˆ˜μ •/μ‚­μ œλŠ” 파이썬의 listμ—μ„œμ˜ 방법과 맀우 μœ μ‚¬ν•©λ‹ˆλ‹€:-)

 

λ”•μ…”λ„ˆλ¦¬ μΆ”κ°€


dic = { 'one' : 1 , 'two' : 2}

dic['three'] = 3 # { 'one' : 1 , 'two' : 2, 'three' : 3}

λ”•μ…”λ„ˆλ¦¬ μˆ˜μ • 


dic = { 'one' : 1 , 'two' : 2}

dic['one'] = 7 # { 'one' : 7 , 'two' : 2}

λ”•μ…”λ„ˆλ¦¬ μ‚­μ œ


dic = { 'one' : 1 , 'two' : 2}

del(dic['one']) # {'two' : 2}
dic.pop('two') # {}

 

πŸ‘€ λ”•μ…”λ„ˆλ¦¬ 반볡문 ν™œμš©ν•΄λ³΄κΈ°

파이썬 반볡문의 문법 κΈ°μ–΅λ‚˜μ‹œμ£ ?! for .. in .. ν˜•νƒœ!

λ”•μ…”λ„ˆλ¦¬λŠ” λ°˜λ³΅λ¬Έμ—μ„œ κ²½μš°μ— 따라 Key, Value , Key - Value λͺ¨λ‘ κ°€μ Έμ˜¬ 수 μžˆμŠ΅λ‹ˆλ‹€!

단 ! λ”•μ…”λ„ˆλ¦¬ 값은 μˆœμ„œλ₯Ό μ§€ν‚€μ§€λŠ” μ•ŠμŠ΅λ‹ˆλ‹€~


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

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

for key,value in dic.items():
	print(key,value)
    

 

 

πŸ‘€ λ¦¬μŠ€νŠΈμ™€ λ”•μ…”λ„ˆλ¦¬ 무엇이 λ‹€λ₯ΌκΉŒ?

κ°€μž₯ 큰 차이점은 ListλŠ” Key값이 μ‘΄μž¬ν•˜μ§€ μ•Šκ³  순차적으둜 μ •λ ¬λ˜μ–΄ μžˆλŠ”μ , λ”•μ…”λ„ˆλ¦¬λŠ” Key-Valueν˜•μ‹μœΌλ‘œ μ €μž₯λ˜μ–΄ μžˆλŠ” 점이 μžˆμ„κ±°κ°™μ€λ°μš”. 

ν‘œλ‘œ λ¦¬μŠ€νŠΈμ™€ λ”•μ…”λ„ˆλ¦¬μ˜ 곡톡점과 차이점을 비ꡐ해 λ³΄μ•˜μŠ΅λ‹ˆλ‹€ !

 

λ”•μ…”λ„ˆλ¦¬μ™€ 리슀트의 곡톡점

  Dictionary List
μƒμ„±ν•˜κΈ° dic = {"one" : 1, "two" : 2} list = [1, 2]
ν˜ΈμΆœν•˜κΈ° dic["one"] list[0]
μ‚­μ œν•˜κΈ° del(dic["one"]) del(list[0])
개수 ν™•μΈν•˜κΈ° len(dic) len(list)
κ°’ ν™•μΈν•˜κΈ° "two" in dic.keys() 2 in list
μ „λΆ€ μ‚­μ œν•˜κΈ° dic.clear() list.clear()

 

λ”•μ…”λ„ˆλ¦¬μ™€ 리슀트의 차이점

  Dictionary List
μˆœμ„œ Key둜 값을 κ°€μ Έμ˜€κΈ° λ•Œλ¬Έμ— μ‚­μ œμ—¬λΆ€μ™€
μˆœμ„œλŠ” 상관 μ—†λ‹€.
μ‚­μ œ μ‹œ μˆœμ„œκ°€ λ°”λ€ŒκΈ° λ•Œλ¬Έμ—
μΈλ±μŠ€μ— λŒ€ν•œ 값이 바뀐닀
κ²°ν•© dic1.update(dic2) list1 + list2

 

 

 

λ°˜μ‘ν˜•

'πŸ“š Algorithm > πŸ“• Python 문법' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€

리슀트(List) / λ”•μ…”λ„ˆλ¦¬(Dictionary) μ •λ ¬  (0) 2020.12.29
리슀트(List)  (1) 2020.12.28
νŠœν”Œ(Tuple)  (0) 2020.12.28