Python降雨量统计

0 投票
2 回答
1681 浏览
提问于 2025-04-30 07:43

我想做的是让程序显示我输入的最高值和最低值,以及对应的月份。我并不是想显示平均值或总和。我遇到了一个错误,如果有人能帮我看看我哪里出错了,我会非常感激。

def main():

    year=[]
    January = float(input('Please enter January rainfall: '))
    February = float(input('Please enter February rainfall: '))
    March = float(input('Please enter March rainfall: '))
    April = float(input('Please enter April rainfall: '))
    May = float(input('Please enter May rainfall: '))
    June = float(input('Please enter June rainfall: '))
    July = float(input('Please enter July rainfall: '))
    August = float(input('Please enter August rainfall: '))
    September = float(input('Please enter September rainfall: '))
    October = float(input('Please enter October rainfall: '))
    November = float(input('Please enter November rainfall: '))
    December = float(input('Please enter December rainfall: '))

year.value((January, February, March, April, May, June, July, August, September, October, November, December))

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

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

main()
暂无标签

2 个回答

2

首先,我建议你用一个列表来存储每个月的降雨量,而不是用12个不同的变量。还有,你在主函数里从来没有调用过 GetSmallestRainfall()GetLargestRainfall(),所以这些函数根本没有被执行。还有一点是,这些函数不在主函数的范围内,你需要把它们作为参数传递,并返回最小值以便打印,像这样:

def getValues():
    months = ["January", "Febuary", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]
    values = []
    for i in range(12):
        values.append(int(input("Please enter " + str(months[i]) + " rainfall: ")))
    return values

def main():
    rainfall = getValues()
    print("The minimum rainfall was " + str(min(rainfall)))
    print("The maximum rainfall was " + str(max(rainfall)))

main()
-1
  1. 当你尝试使用值函数时,year这个变量是无法被找到的。
  2. 另外,列表对象是没有值函数的。

你应该往列表里“添加”内容。

撰写回答