python将列表逆序,python将列表倒序

  python将列表逆序,python将列表倒序

  引用:这个问题源于一位网友的帮助。作为水团龙王,我有义务带这个问题。我们先来看问题:

  当你拿到标题的时候,标题的意思就已经很明确了。需要删除列表中所有带有2的元素,然后输出删除后的新列表。我的第一个想法是用for循环遍历字符串,在s中使用字符串运算符x(如果x是s的子串,则返回True,否则返回False),使用if函数,如果为True则移除元素。最后,输出一个新的列表。

  代码和运行结果如下(这是错误的)

  与原列表相比,删除了一些带2的元素,但没有完全删除。为什么?

  我们来分析一下python是根据列表元素的下标来遍历的。首先,元素123的下标为0,元素212的下标为1。在第一遍中,执行s.remove,删除元素123。当进入第二个周期的时候!重点来了。注意,此时已经删除了元素123,因此元素212的下标从1变为0,元素434的下标从2变为1。下标0已经在第一个循环中执行了,所以第二个循环将寻找下标1的元素。

  想必你已经知道为什么在输出结果中没有删除212,因为这两个商品根本没有被python发现,取了前一个元素的位置逃避了例行检查。为什么1215号元素没有被删除?因为它的下标改成了前一个元素231的位置,所以躲过了python大哥的例行检查。

  好了,错误的原因找到了。怎么解决?穿越就像一条路。你可以从路的起点走到终点,也可以从路的终点走到起点。刚才我们是正序遍历,解决不了问题。反过来呢?试一试。

  反向遍历的结构可以如下:对于范围内的I(len(s)-1,-1,-1)

  代码的运行结果如下(这是正确的)

  正确的例子表明我们得到了期望的输出结果。这里不再解释为什么逆序没有问题(因为不知道怎么解释,哈哈哈)。请记住,在使用for循环删除元素时,应该从后向前遍历,否则列表将会越界。

  除了使用remove方法,我们还有其他选择吗?当然有,python。其他功能也就那么几个。

  有几种(或更多)方法可以实现摘要列表的反向遍历:

  各种方法的总结

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • python将字符串转换成日期,python 字符串转换为日期
  • python将字符串转换成日期,python 字符串转换为日期,Python如何将字符串转换为日期
  • python将字符串转换为数字型,python中数字字符和数字值有何不同,如何转换
  • python将两个一维数组转化为二维数组,matlab把二维数组转为三维数组
  • python将文本转为数组,python读取txt文件为数组
  • python将一个正整数分解成质因数,用python分解质因数
  • python单位转换编程英寸厘米,python将8厘米转换为以英寸为单位的长度并输出
  • python将列表中指定元素修改,python 替换列表中的元素
  • Python将字符串分割,python中把字符串分割成单个字符
  • python将数字转换为日期,python excel写入日期变数字
  • Python读取文件名写入Excel,python将结果写入excel文件
  • 用python将字符串进行反转,python中字符串反转函数
  • python 数字类型和字符串类型的相互转换,python将字符串类型转换为数字
  • Python读取文件名写入Excel,python将数据写入excel指定单元格
  • python中将字符串转化为数字,Python将字符串转为数字
  • 留言与评论(共有 条评论)
       
    验证码: