• python 列表之更新、删除元素


    一、替换列表中的元素:

    当需要更改列表中某一元素的值时,我们改如何处理?
    其实,我们只要遍历一遍列表,对其中的每一个元素进行判断,若该元素是想要更改的元素,则对其进行更改。
    如下图所示例子:

     computers列表中,有很多的电脑品牌,我们要将列表中的“HUAWEI”替换成“Lenovo”,思路是遍历此列表,找到
    “HUAWEI”这个元素,通过下标或索引的方式将元素替换掉

    上面这种方式打印结果如下:

    在替换列表中的元素时,很容易出现如下错误:即不是通过下标或索引的方式进行元素替换:

     上图打印的结果如下,并没有将列表中的“HUAWEI”替换成“Lenovo”。因为computer值的改变,并没有改变列表中的值。

    二、删除列表中的元素:
    我们先看一种方式:

     从代码逻辑去看,似乎没有问题,看看我们运行时的结果怎样:

     结果提示列表索引溢出。这是为什么呢?是因为没删除一个元素,列表的长度是变化的,那么computers[i]必然会超出
    列表的索引范围。必然,列表长度为5,那么i的值就是0 到 4,当列表中一个元素被删除后,该列表长度变为4,当i的值
    为4时,就超过了列表的索引范围(因为被删除一个元素后,列表的索引范围为0到3)
    那么,我们该如何去正确删除列表的元素呢?或许我们可以通过while循环来实现,如下图:

     遍历列表中的元素,若遍历过程中元素为“mac”或“IBM”,则将其删掉。当删掉了该元素后,列表长度将要-1
    此时不需要将i的值进行+1操作,因为删掉后后面的元素索引将前移(即减1),程序必须还得从当前位置进
    行判断。

    若遍历过程中元素不包含“mac”或“IBM”,,则不删除,i的值加1

  • 相关阅读:
    java 枚举类小结 Enum
    hibernate查询
    java装饰者模式理解
    内部类学习
    java使用json将HashMap转化成javabean小例子
    HashMap存储数据赋值javabean简单示例
    java数组转化成集合
    java正则匹配并提取字串
    Windows cmd命令反斜杠问题
    自动化构建工具
  • 原文地址:https://www.cnblogs.com/leolsl/p/12928877.html
Copyright © 2020-2023  润新知