首页 > 解决方案 > 缺乏迭代和追加空列表

问题描述

以下代码未按应有的方式进行迭代。我不明白问题是什么。如果您认为您可以帮助我,请告知。

def getRainfallAmounts(namesOfMonths):
    NUMBER_OF_MONTHS_IN_A_YEAR = 12
    totalRainfallList = [ ]
    
    for currentMonthIndex in range(NUMBER_OF_MONTHS_IN_A_YEAR):
        monthlyRainfall = float(input("Please enter the rainfall amount for " +\
                                      namesOfMonths[currentMonthIndex]))
        totalRainfallList.append(monthlyRainfall)
        
        return totalRainfallList

标签: pythonloopsfor-loopiteration

解决方案


return语句在for循环下缩进,因此它在第一次迭代结束时返回。您应该取消缩进它以便for循环完成,然后才返回:

def getRainfallAmounts(namesOfMonths):
    NUMBER_OF_MONTHS_IN_A_YEAR = 12
    totalRainfallList = [ ]
    
    for currentMonthIndex in range(NUMBER_OF_MONTHS_IN_A_YEAR):
        monthlyRainfall = float(input("Please enter the rainfall amount for " +\
                                      namesOfMonths[currentMonthIndex]))
        totalRainfallList.append(monthlyRainfall)
        
    return totalRainfallList # Here!

推荐阅读