关于python list index out of range


我写的这个 去除 字符串中多余空格,(所有空格处 只保留一个空格)的 方法

 

如果发生 remove 那么 len(l)的总大小就会减少,而 i的 最大值不变,所以会暴这个错误

def removeblank(line):
str=line.strip()
l=strtolist(str)
for i in range(len(l)):
if (l[i] == ' ' and i+1<len(l)):
a=l[i]
for j in range(i+1,len(l)):
b=l[j]
if l[j]==' ':
l.remove(l[j])
break
return l

用while的 方式就 不会报错

list0=[0,1,2,3,4,5,6,7,8,9,10]
def listtest(list):
i=0
while i<len(list):
if i%3==0:
list.remove(i)
print(i)
i=i+1
listtest(list0)


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM