dictionary는 말 그대로 사전형 자료구조이다.
사전을 생각해보자.

위와 같이 python이라는 단어와 뜻이 매핑되어 있다.
파이썬에서는 python-key, 비단뱀-value 라고 본다.
key와 value는 1대 1로 대응된다.
하나의 key에는 하나의 value만이 해당된다.
또한 key의 값은 중복을 허용하지 않고 바뀌지 않지만,
value 값은 바뀌어질 수 있다.
>>> tel = {'jack': 4098, 'sape': 4139}
딕셔너리는 key:value의 형태로 중괄호 안에 넣어 만든다.
빈 중괄호는 빈 딕셔너리를 만든다.
아래는 프로그래머스의 [코딩테스트 연습]-[코딩테스트 입문]의 문제 중, 옷가게 할인 받기 문제이다.
머쓱이네 옷가게는 10만 원 이상 사면 5%, 30만 원 이상 사면 10%, 50만 원 이상 사면 20%를 할인해줍니다.
구매한 옷의 가격 price가 주어질 때, 지불해야 할 금액을 return 하도록 solution 함수를 완성해보세요.
처음 이 문제를 나는 조건문을 활용해서 해결했다.
프로그래머스의 장점은 문제를 풀고 난 다음 바로 다른 사람의 풀이를 확인할 수 있다는 점인데,
어떤 분들은 딕셔너리를 활용해서 위 문제를 해결하셨다.
def solution(price):
discount_rates = {500000:0.8, 300000:0.9, 100000:0.95. 0:1}
for discount_price, discount_rate in discount_rates.items():
if price >= discount_price:
return int(price * discount_rate)
items()
: items() 메서드를 사용하면 key와 대응하는 value를 동시에 얻을 수 있다