我写了这段代码来获取姓名,学号和分数,然后找到最大值,报告和删除,但我有一个删除问题,我无法根除。当我运行时,我得到IndexError:列表索引超出第37行的范围行,虽然我找不到它的问题。
DerivedData
答案 0 :(得分:1)
我认为这可能是因为当您删除项目时,一旦项目被删除,您就不会破坏。然后,当你到达用于拥有N个元素的列表的末尾时,你只剩下N-1个元素。
在之后添加休息时间:
for i in range(len(x)):
if p==z[i]:
x.pop(i)
y.pop(i)
z.pop(i)
break # here
或者改为使用find
并重写为:
position = x.find(p)
if position != -1:
x.pop(position)
y.pop(position)
z.pop(position)