1. ホーム
  2. python

[解決済み] Python-降雨統計

2022-02-14 14:01:35

質問

プログラミング入門の授業で宿題を考えています。 私はほとんどの情報を見つけるために長い道のりを歩んできたようです。 私は、12ヶ月の各月の総雨量のためのユーザー入力を取るプログラムを設計する必要があります。 その年の総雨量、平均雨量、最も多い月と最も少ない月を計算し、表示する必要があります。 私のプログラムでは、最高と最低の月名を表示する以外は、すべて行うことができます。 前にも述べたように、私はこの件で遠回りをしたし、最も効率的な道ではない可能性が高いことも承知しています。 以下は私のコードです。

year=[]
jan=float(input('Please enter Jan rainfall: '))
feb=float(input('Please enter Feb rainfall: '))
mar=float(input('Please enter Mar rainfall: '))
apr=float(input('Please enter Apr rainfall: '))
may=float(input('Please enter May rainfall: '))
jun=float(input('Please enter Jun rainfall: '))
jul=float(input('Please enter Jul rainfall: '))
aug=float(input('Please enter Aug rainfall: '))
sep=float(input('Please enter Sep rainfall: '))
oct=float(input('Please enter Oct rainfall: '))
nov=float(input('Please enter Nov rainfall: '))
dec=float(input('Please enter Dec rainfall: '))

year.extend((jan, feb, mar, apr, may, jun, jul, aug, sep, oct, nov, dec))

def lowest():
    print('The minimum rainfall is', min(year))
lowest()

def highest():
    print('The most rainfall is', max(year))
highest()

def total():
    print('The total rainfall is', sum(year))
total()

def average():
    print('The average rainfall is', float(sum(year))/len(year))
average()

これを実行すると、入力プロンプト、最小値、最大値、合計値、および平均値が得られます。 ただ、最小値と最大値の月名をどこで取得すればいいのかがわかりません。 もし、もっと手っ取り早い方法があれば、それもお願いします。 ありがとうございます。

解決するには?

辞書は使えないので、月名用のリストを別に作ればいいのでは?

months = ["jan", "feb", "mar", ... ]

次に、任意の関数で返された値のインデックスを使用して、他のリストから月名を取得します。

def lowest():
    low = min(year)
    month = months[year.index(low)]
    print ...