Menu
CoddyTech

요약 - 쇼핑카트 에러

Coddy Python 여정의 논리와 흐름 섹션에 포함된 레슨. 78개 중 66번째.

challenge icon

챌린지

중급

오류 처리를 사용하여 장바구니를 시뮬레이션하는 프로그램을 작성하세요. 여러분의 작업은 다음과 같습니다.

  1. 고객 주문을 처리하는 handle_shopping_cart라는 함수를 만드세요.
  2. 이 함수는 "item:quantity" 형식의 주문 문자열 목록을 받아야 합니다.
  3. 각 주문을 다음과 같이 처리하세요.
    • 입력 문자열을 분할하여 상품과 수량을 가져옵니다.
    • 수량을 정수로 변환합니다.
    • 수량을 값으로 사용하여 상품을 장바구니 딕셔너리에 추가합니다.
    • 상품이 이미 장바구니에 있으면 새 수량을 기존 수량에 더합니다.
  4. 다음과 같은 특정 오류를 처리하세요.
    • 입력 형식이 올바르지 않은 경우(콜론 누락), "Invalid format: {order}"를 출력합니다.
    • 수량이 유효한 숫자가 아닌 경우, "Invalid quantity: {order}"를 출력합니다.
    • 수량이 음수인 경우, "Negative quantity not allowed: {order}"를 출력합니다.
  5. 완성된 장바구니 딕셔너리를 반환합니다.

if를 사용하여 형식과 음수 수량을 확인하세요. 수량을 정수로 변환하는 작업에서만 오류가 발생할 수 있으므로, except ValueError에서 "Invalid quantity: {order}"를 출력합니다. 마지막 except Exception as e 블록은 안전망으로 그대로 유지하고, 그곳에서 "Unexpected error: {e}"를 출력하세요.

직접 해보기

def handle_shopping_cart(orders):
    # 쇼핑 카트를 위한 빈 딕셔너리 생성
    cart = {}

    # 리스트의 각 주문 처리
    for order in orders:
        try:
            # 주문을 분할하고 형식과 수량을 확인한 다음 카트에 추가
            pass

        except ValueError:
            # 수량이 숫자가 아님
            pass

        except Exception as e:
            # 예상치 못한 모든 것
            pass

    # 완성된 카트 반환
    return cart

논리와 흐름의 모든 레슨

직접 연습해 보세요: 온라인 Python 컴파일러