python列表的逆序遍历实现

作者:AAAAAA??????d 时间:2021-08-02 02:01:28 

引题:该题源自一个网友的求助,作为水群龙王的我义不容辞的接下了这道题目,先来看题目:

python列表的逆序遍历实现

拿到这道题,题目的意思已经很清楚了,列表里含有2的元素都需要删除,然后输出删除后的新列表。我首先想到的思路就是使用for循环遍历字符串,利用字符串操作符x in s(如果x是s的子串,返回True,否则返回False),使用if函数 ,若为True则删除(remove)该元素。最终输出新列表。

     思路代码及运行结果如下(这是错的)

python列表的逆序遍历实现

错误实例

观察输出结果,跟原列表相比虽然剔除了一些含2的元素,但是并没有完全剔除,为什么?

 来分析一下python是根据列表元素的下标来遍历的。于是最开始元素123下标为1, 元素212下标为2。第一遍循环执行了s.remove,删除了元素123。当进入第二遍循环时!!!重点来了,注意 此时元素123已经是被删除了, 所以元素212的下标由1变成了0,元素434下标由2变成了1。而下标为0已经在第一遍循环中执行了,故第二遍循环会寻找下标为1的元素。

写到这 想必大家已经知道为什么输出结果中212没有被删除,因为这2货压根就没有被python发现,坐上了前一个元素的位置逃过了例行检查。元素1215为什么也没被删除??因为它下标变成了前面的元素231的位置,逃过了python大哥的例行检查。

来源:https://blog.csdn.net/weixin_46167872/article/details/105597375

标签:python,列表,逆序遍历
0
投稿

猜你喜欢

  • PHP中__LINE__,__FILE__,__DIR__等常用魔术常量实例讲解

    2023-06-13 23:42:32
  • python多进程共享变量

    2023-08-30 07:40:53
  • FireScope-面向Web开发者和设计者的参考手册

    2009-03-22 15:35:00
  • 使用 Visual Studio Code(VSCode)搭建简单的Python+Django开发环境的方法步骤

    2022-03-03 10:04:54
  • Python中异常捕获与处理的方法总结

    2023-12-10 07:48:24
  • django 实现编写控制登录和访问权限控制的中间件方法

    2021-04-26 21:08:53
  • python爬虫竟然被小伙用来算命

    2023-08-28 17:35:20
  • pytorch实现线性回归以及多元回归

    2023-04-13 02:15:27
  • Python3 导入上级目录中的模块实例

    2023-09-01 02:25:20
  • django创建css文件夹的具体方法

    2021-08-29 06:04:08
  • 对网站内嵌gradio应用的输入输出做审核实现详解

    2023-07-22 08:22:05
  • Python numpy.transpose使用详解

    2021-10-17 16:51:10
  • 提高MySQL查询效率的三个技巧

    2009-02-11 13:19:00
  • 图片预加载效果的实现

    2008-06-16 12:08:00
  • Bottle框架中的装饰器类和描述符应用详解

    2023-10-10 00:18:25
  • Python Opencv基于透视变换的图像矫正

    2022-03-13 16:47:14
  • php错误级别的设置方法

    2023-11-24 10:30:35
  • 用python发送微信消息

    2022-04-14 07:16:55
  • TensorFlow2.1.0安装过程中setuptools、wrapt等相关错误指南

    2023-07-30 10:28:08
  • Django Path转换器自定义及正则代码实例

    2022-05-19 09:01:25
  • asp之家 网络编程 m.aspxhome.com