본문 바로가기
프로그램

[파이썬] 문제 : 카페 메뉴 가격 출력

by 오디세이99 2024. 7. 11.
728x90
반응형

# 메뉴를 딕셔너리와 리스트로 등록
menu = {1:['아메리카노',2500], 2:['가페라떼',3000], 3:['버블티',3500]}

def menu_price(m_no):         # 조건3)  매개변수로 받아 처리
    if m_no in menu.keys():   # 번호가 key들 중 있는지 확인
        name = menu[m_no][0]  # value의 리스트[0]은 메뉴명
        price = menu[m_no][1] # value의 리스트[1]은 가격
    else:
        name = ""             # 없는 번호면 없음으로 표시
        price = 0

    return name, price        # 메뉴명, 가격 리턴

menu_str = ""                 # 화면에 보이는 메뉴문자열 만들기
for i,  k_v in enumerate(menu.items()):
    menu_str += f"{k_v[0]}:{k_v[1][0]}"
    if i < len(menu.keys()):  #  마지막 전까지 / 를 붙임
        menu_str += "/"
    
m_no = int(input(f"메뉴선택({menu_str}):"))  # 조건1) 메뉴 번호 입력 받음
    
name, price = menu_price(m_no)               # 조건2) 함수 호출, 메뉴 인수로 함수 호출

if name == "":                               # 조건5) 없는 메뉴에 대한 메시지 출력
    print("없는 메뉴 금액은 0원입니다.")   
else:
    print(f"{name} 금액은 {price}원입니다.")  # 조건4) 메뉴명과 가격 출력

728x90
반응형

댓글