Python列表(慢填)

未填坑:如何删除列表中,个数为两个的元素

用切片操作

Python列表(慢填)_第1张图片
切片操作列表

列表for循环中修改元素

Python列表(慢填)_第2张图片
列表for循环中修改元素

del remove pop的区别

  • pop默认删除最后一个,有索引的话,删除索引


    Python列表(慢填)_第3张图片
    del remove pop的区别

当我说到遍历删除元素的时候,到底是指什么情况?

Python列表(慢填)_第4张图片
当我说到遍历删除元素的时候,到底是指什么情况
  • 当我们只需删除一个元素的,无所谓。即无须对其他成员进行遍历
  • 而当我们需要对每个成员进行遍历时,这个方法不行,会漏掉一个元素
  • 但是这种方法不会出错
  • 为什么没有打印出3,因为删除2时已经是第二个位置,删除后,3又变成第二个位置,而第二个位置已经过去了

以下是会出错的方法

Python列表(慢填)_第5张图片
索引遍历,元素减少

当我们用索引遍历时,因为list的元素个数已经减少一个了。但是i取值却没有减少。但是会出现i出界的情况

解决方法

倒序遍历

Python列表(慢填)_第6张图片
倒序遍历
  • 列表中的元素删除后,后面的元素会向前跑
  • 正序遍历时,删除这元素后,索引指针后移,后面一个元素前移,故漏掉
  • 倒序时,从后向前,索引指针前移,后面的元素已经遍历完了,故前移无所谓

比较副本,操作原本

Python列表(慢填)_第7张图片
比较副本,操作原本

sort方法

内部调用for循环

你可能感兴趣的:(Python列表(慢填))