我试图在Python中实现一个返回列表大小的函数.列表开头= [0,0,2,0,0,0,0,0,0,0].我想在计算大小之前删除所有的0,所以它应该是这样的:
def cardl(list): for j in range(0,10): if list[j]==0: list.remove(list[j]) return len(e[g])
问题是,不是最后返回1,而是返回9.当然我在循环中犯了一些错误.
谢谢您的帮助 !
您在代码中返回太早,并且在迭代时修改列表并不是一个好主意.
顺便说一句,更简单的解决方案是:
>>> lis = [0,0,2,0,0,0,0,0,0,0] >>> len(lis) - lis.count(0) 1