首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么我的列表索引超出了范围?

为什么我的列表索引超出了范围?
EN

Stack Overflow用户
提问于 2015-10-15 05:17:38
回答 1查看 30关注 0票数 0
代码语言:javascript
运行
复制
def main():
    print("You haved activated Weather Pro 3.0")
    rain_inputs()
    rain_calc()

def rain_inputs():
    global rain
    rain = []
    for x in range(1, 13):
        try:
            rain_meter = float(input("What is the rainfall? "))
            rain.append(rain_meter)
            if x == 4:
                print("8 more months to go!")
            elif x == 7:
                print("5 more months to go!")
            elif x == 9:
                print("2 more to go! Smash those keys!")
            elif x == 13:
                return
        except Exception as err:
            err = ("You should be putting in numbers!")
            print(err)

rain_calc应该计算所有列出的输入的总数。

代码语言:javascript
运行
复制
def rain_calc():
    rain_math =(rain[0] + rain[1] + rain[2] + rain[3])
    rain_math2 =(rain[5] + rain[6] + rain[7] + rain[8])
    rain_math3 =(rain[9] + rain[10] + rain[11] + rain[12])
    rain_total =(rain_math + rain_math2 + rain_math3)
    print(rain_total)   

main()   

错误发生在rain-math3中:

代码语言:javascript
运行
复制
Programming/RainFall.py", line 30,           in rain_calc rain_math3 =(rain[9] + rain[10] + rain[11] + rain[12])
IndexError: list index out of range
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-10-15 05:23:05

rain[12]超出了范围,因为rain中只有12个元素。你错过了rain[4],所以你可能想要这个:

代码语言:javascript
运行
复制
def rain_calc():
    rain_math =(rain[0] + rain[1] + rain[2] + rain[3])
    rain_math2 =(rain[4] + rain[5] + rain[6] + rain[7])
    rain_math3 =(rain[8] + rain[9] + rain[10] + rain[11])
    rain_total =(rain_math + rain_math2 + rain_math3)
    print(rain_total)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33140396

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档