最近遇到一个问题,我有一个三维列表,我要找到符合我条件的一维列表,然后把它所在的二维列表删除。由于数据涉及到一些问题,这里我自己随便写了一个三维列表。
于是就报了错,这个错误的意思是我写入的元素位置超过了列表的长度。
那么为什么会这样呢,因为我从列表的头部开始删除,删除之后列表的长度就会变短,那么后面的元素自然就超出了长度。
那么我们换个角度继续进行,使出一招围魏救赵 ,我把位置拿出来,然后从后面开始删除。
此时我又遇到了一个问题,删多了。
原因是因为我的位置写入这一步是在循环中,也就是一个位置可能会写入几次,那么与刚才一样,当我删除到靠前的位置时,出现重复的位置就会把后面补上的元素删除。
那么我们对读出来的位置进行一次去重操作,这样就没问题了。