━━━━ ◇ ━━━━
파이썬/코드잇

Python 46. 사전 (dictionary) 실습 with 코드잇

728x90
반응형

해당 포스팅은 코드잇 복습을 위한 포스팅입니다.
문제 발생 시 즉시 비공개 처리 하겠습니다.

실습 1

태호는 영어 단어 공부를 위해서 단어장 프로그램을 만들었다. 하지만 이번에는 영-한으로 공부하는 것이 아니라, 한-영으로 공부를 하려고 한다. 

사전의 key와 value를 뒤집어 주는 함수 reverse_dict를 작성하자. reverse_dict는 파라미터로 사전 dict를 받고, key와 value가 뒤집힌 새로운 사전을 리턴한다. 

 

 

실행결과

 

내 코드

def reverse_dict(dict):
    new_dict = {}

    for key, value in dict.items():
        new_dict[value] = key

    return new_dict

vocab = {
    'sanitizer': '살균제',
    'ambition': '야망',
    'conscience': '양심',
    'civilization': '문명',
    'privilege': '특권',
    'principle': '원칙'
}

print("영-한 단어장\n{}\n".format(vocab))

reversed_vocab = reverse_dict(vocab)
print("한-영 단어장\n{}".format(reversed_vocab))


#실행결과
영-한 단어장
{'sanitizer': '살균제', 'ambition': '야망', 'conscience': '양심', 'civilization': '문명', 'privilege': '특권', 'principle': '원칙'}

한-영 단어장
{'살균제': 'sanitizer', '야망': 'ambition', '양심': 'conscience', '문명': 'civilization', '특권': 'privilege', '원칙': 'principle'}

 

모범답안

 


실습 2

효신이는 매년 국회의원 선거 때마다, 성북구에서 집계 도우미 봉사를 한다. 작년까지는 표를 손수 세다가, 올해부터는 IT 시대에 더 적합한 솔루션을 개발하려고 한다. 

 

파이썬 리스트 vote에는 성북구민들의 투표 결과가 저장되어 있다. 리스트 vote의 정보를 토대로, 사전 vote_counter에 후보별 득표수를 정리하는 것이 목표다. 

 

예를 들어서 votes가 ['허유나', '서혜선', '허유나']라고 가정하면, vote_counter는 {'허유나': 2, '서혜선': 1}이 되어야 한다. 

 

실행결과

 

내 코드

votes = ['김영자', '강승기', '최만수', '김영자', '강승기', '강승기', '최만수',
         '김영자', '최만수', '김영자', '최만수', '김영자', '김영자', '최만수',
         '최만수', '최만수', '강승기', '강승기', '김영자', '김영자', '최만수',
         '김영자', '김영자', '강승기', '김영자']

vote_counter = {}

for name in votes:
    if name not in vote_counter:
        vote_counter[name] = 1
    else:
        vote_counter[name] += 1

print(vote_counter)

#실행결과
{'김영자': 11, '강승기': 6, '최만수': 8}

모범답안

 

 


728x90
반응형
COMMENT