요약 - 쇼핑카트 에러
Coddy Python 여정의 Logic & Flow 섹션에 포함된 레슨 — 78개 중 66번째.
챌린지
중급에러 핸들링 기능이 포함된 쇼핑카트를 시뮬레이션하는 프로그램을 작성하세요. 여러분의 작업은 다음과 같습니다:
- 고객 주문을 처리하는
handle_shopping_cart라는 함수를 만듭니다. - 이 함수는 "item:quantity" 형식의 주문 문자열 리스트를 인자로 받아야 합니다.
- 각 주문을 다음과 같이 처리합니다:
- 입력 문자열을 분리하여 품목(item)과 수량(quantity)을 가져옵니다.
- 수량을 정수(integer)로 변환합니다.
- 품목을 쇼핑카트 딕셔너리에 추가하고 수량을 값으로 설정합니다.
- 품목이 이미 카트에 존재한다면, 기존 수량에 새로운 수량을 더합니다.
- 다음과 같은 특정 에러들을 처리합니다:
- 입력 형식이 잘못된 경우(콜론 누락), "Invalid format: {order}"를 출력합니다.
- 수량이 유효한 숫자가 아닌 경우, "Invalid quantity: {order}"를 출력합니다.
- 수량이 음수인 경우, "Negative quantity not allowed: {order}"를 출력합니다.
- 완성된 쇼핑카트 딕셔너리를 반환합니다.
직접 해보기
def handle_shopping_cart(orders):
# 장바구니를 위한 빈 딕셔너리 생성
# 리스트의 각 주문 처리
for order in orders:
try:
# 주문을 분리하고 장바구니에 추가
# 잠재적인 오류 처리
except ValueError:
# 값 오류 처리
except Exception as e:
# 예기치 않은 오류 처리
# 완성된 장바구니 반환