虽然循环澄清在python-错误

时间:2016-08-03 10:33:10

标签: python-2.7 loops while-loop sum

我在python编码方面有一点经验,我尝试编写一个代码,用于汇总列表中除99号之外的项目。这是我的代码:

>>> 
100

Traceback (most recent call last):
  File "G:\desktop\test.py", line 3, in <module>
while grade[i]!=99:
IndexError: list index out of range
>>> 

但是我收到了这个错误:

Runnable

1 个答案:

答案 0 :(得分:1)

  1. 好像您要将i初始化为字母o而不是0。 (编辑:OP更新了问题)

  2. 您对列表中的索引与之间的差异存在一些误解 列表中的元素。在第一次迭代中,您将i设置为相等100i + grade[i]0 + 100)。因此,在第二次迭代中,您尝试访问grade的第100个索引,该索引显然不存在,并且正在引发IndexError

  3. 使用Python的内置sum

    考虑一种更简单的方法
    grade = [100,30,99,85]
    sum_grade = sum(num for num in grade if num != 99)
    print(sum_grade)
    >> 215