본문 바로가기
Python/Python_basic

딕셔너리 조회 예제 (dictionary comprehension + input함수)

by Mr.DonyStark 2023. 11. 13.
#아래 Dict 데이터에서 사용자 입력으로 키(Key) 로 검색 후 값을 반환하시오

dict_data = {'USA' : 36, 'Germany' : 17, 'France' : 32, 'Australia' : 77, 'South Africa' : 99, 'India' : 108, 'South Korea' : 200}

#예제 풀이①
search_Keyword = input('국가명을 영문으로 입력해주세요(미국은 USA, 미국 제외한 국가는 첫글자만 대문자로 기재) : ') #input 함수 지정

#입력받은 값에 따라 if문사용
if search_Keyword in dict_data.keys():           
    print_value = dict_data.get(search_Keyword)
    print(f'풀이방법1 : 입력하신 {search_Keyword} 에 대한 키 값은 {print_value} 입니다.')
else:
    print(f'풀이방법1 : 입력하신 {search_Keyword} 키 값이 존재하지 않습니다.\nNO results were found for your search!!!!')
    
#예제 풀이② 대소문자 구별없이
def search_dict(word):     #함수정의
    try:
        c = dict((new_k.lower(), new_val) for new_k, new_val in dict_data.items()) #딕셔너리 컴프리핸션 .items() 활용 및 .lower()을 활용하여 키값에 대한 소문자 변환 시행
        return c[word]
    except:
        return '풀이방법2 : No results were found for your search'
txt = input('국가명을 영문으로 입력해주세요(미국은 USA, 미국 제외한 국가는 첫글자만 대문자로 기재) : ').lower() #input 함수 지정 + 대소문자 구별 없도록 .lower()사용

print(search_dict(txt)) #함수호출 및 위에서 정의한 인풋값을 매개변수로 받아 함수실행

'Python > Python_basic' 카테고리의 다른 글

무작위 6자리 코드 생성 예제  (1) 2023.11.15
날짜 포매팅 예제(from datetime import datetime)  (1) 2023.11.13
타임 딜레이  (2) 2023.11.08
enumerate()  (0) 2023.11.08
딕셔너리 ↔ 자료구조 형변환  (1) 2023.11.07