まとめ:ショッピングカートのエラー
CoddyのPythonジャーニー「Logic & Flow」セクションの一部 — レッスン 66/78。
チャレンジ
中級エラーハンドリングを備えたショッピングカートをシミュレートするプログラムを作成してください。あなたのタスクは以下の通りです:
- 顧客の注文を処理する
handle_shopping_cartという名前の関数を作成します - この関数は、 "item:quantity" 形式の注文文字列のリストを受け取る必要があります
- 各注文を以下の手順で処理します:
- 入力文字列を分割して、アイテムと数量を取得します
- 数量を整数に変換します
- アイテムをショッピングカートの辞書に追加し、数量を値として設定します
- アイテムがすでにカートに存在する場合は、既存の数量に新しい数量を加算します
- 以下の特定のエラーを処理します:
- 入力形式が正しくない(コロンがない)場合は、 "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:
# 予期しないエラーを処理します
# 完成したカートを返します