01
Python 中用到最多的结构便是 List ,对外提供删除操作,比如 remove, pop 方法,但是在使用过程中,新手非常容易犯一个错误。
02
直接上代码:
想问,这样可以完成所有对 '' 字符的删除吗?
打印结果查看,
print(test1)
>>>['a', 'b', 'c', '']
可以观察还有一个‘’ 没有删除。这是为什么呢?
当我们删除test1中的空字符时,test1 = ['a','b','c','',''],for in 是对下标进行操作,而 remove 是对值进行操作,当 for 到达索引为3,即第一个空字符位置时,符合条件即删除。
因为 list 是线性表,所以删除这个空字符时,同时后面的所有元素自动移动位置1,此时的 test1 等于 ['a','b','c',''],因为 for in 已经遍历到了索引3处,所以循环结束。
那我们应该正确删除 List 的某个元素呢?