for i in range(len(nums)):
if nums[i] == 2:
nums.pop(i)
nums =[0,1,2,2,3,0,4,2]
为什么out of range
len(nums) = 8
然后for 循环从0开始
会得到i=0一直到7
nums[i]就会是nums中的每一个数
我到底哪里理解错了
谢谢指点
for i in range(len(nums)):
if nums[i] == 2:
nums.pop(i)
nums =[0,1,2,2,3,0,4,2]
为什么out of range
len(nums) = 8
然后for 循环从0开始
会得到i=0一直到7
nums[i]就会是nums中的每一个数
我到底哪里理解错了
谢谢指点
pop() 函数用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值。
你在循环过程中改变了list的长度,但是len(nums)只会计算一次,已经确定了, 所以越界了