# ============================================================
# 売上データの集計 (見本・答え) ― Step 4 プログラミングコース ユニット3
# pan-uriage.csv (パン屋「パンの森」の売上 100行) を読みこんで、
#   ① 売上の合計金額
#   ② 一番売れた商品
# の2つを出します。
#
# 動かし方:
#   1. pan-uriage.csv を、このファイルと同じフォルダに置く
#   2. コマンドで:  python uriage-mihon.py
#
# 使い方: まず写して動かす → 改造のヒント (一番下) へ。
# ============================================================

import csv   # CSVファイルを読むための道具

goukei = 0          # ① 合計金額をためていく箱
shouhin_betsu = {}  # ② 商品ごとの売上をためていく箱 (名札つきの引き出し)

# CSVを1行ずつ読む。encoding="utf-8" は「日本語の読み方の指定」です。
with open("pan-uriage.csv", encoding="utf-8") as f:
    hyou = csv.DictReader(f)   # 1行を {"商品名": "メロンパン", ...} の形で読める
    for gyou in hyou:
        namae = gyou["商品名"]
        uriage = int(gyou["うりあげ"])   # 文字 "3780" を 数値 3780 に変える

        goukei = goukei + uriage

        # この商品の引き出しがまだ無ければ 0 で作り、売上を足しこむ
        if namae not in shouhin_betsu:
            shouhin_betsu[namae] = 0
        shouhin_betsu[namae] = shouhin_betsu[namae] + uriage

# ② 一番売れた商品をさがす
ichiban_namae = ""
ichiban_kingaku = 0
for namae in shouhin_betsu:
    if shouhin_betsu[namae] > ichiban_kingaku:
        ichiban_namae = namae
        ichiban_kingaku = shouhin_betsu[namae]

print("=== パンの森 5月の売上 ===")
print("売上の合計: " + str(goukei) + "円")
print("一番売れた商品: " + ichiban_namae + " (" + str(ichiban_kingaku) + "円)")

# ---------- 改造のヒント ----------
# その1: 商品ごとの売上を、全部ならべて表示してみよう。
#   ヒント: for namae in shouhin_betsu: の中で print します。
# その2: 「こすう (売れた個数)」の合計も出してみよう。
# その3 (発展): 日付ごとの売上を集計して、一番売れた日を出してみよう。
# ----------------------------------
