• Python删除列表元素的3种方法


    之前看教程的时候比较着急,对这些基础掌握不好,过来回顾一下

    使用del语句删除

    lis = [1, 2, 3, 'a', 'b']
    print(lis)
    
    del lis[0]
    print(lis)
    

    输出

    [1, 2, 3, 'a', 'b']
    [2, 3, 'a', 'b']
    

    使用del语句可以删除任何位置处的列表元素,条件是知道索引
    如要删除列表中等的 ‘a’ 元素

    lis = [1, 2, 3, 'a', 'b']
    print(lis)
    
    del lis[3]
    print(lis)
    

    输出

    [1, 2, 3, 'a', 'b']
    [1, 2, 3, 'b']
    

    上面的实例表明,使用del语句将值从列表中删除后,就无法访问了

    使用pop()方法删除

    pop() 方法用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值。

    lis = [1, 2, 3, 'a', 'b']
    print(lis)
    
    a = lis.pop()
    
    print(a)
    print(lis)
    

    输出

    [1, 2, 3, 'a', 'b']
    b
    [1, 2, 3, 'a']
    

    可以看出列表末尾的元素被删除并赋值给a中

    实际上,pop()方法可以用来删除列表中任何位置的元素,只需要在括号中指定要删除元素的索引即可

    lis = [1, 2, 3, 'a', 'b']
    print(lis)
    
    a = lis.pop(1)
    
    print(a)
    print(lis)
    

    输出

    [1, 2, 3, 'a', 'b']
    2
    [1, 3, 'a', 'b']
    

    可以看出用pop()方法把索引值为1的元素从列表中删除

    同del一样,被弹出的元素就不在列表中了

    根据值删除元素

    有时候不知道元素在列表中的位置,但知道元素的值,就可以用remove()方法删除元素
    例如我们要把列表中的元素 3 删除

    lis = [1, 2, 3, 'a', 'b']
    print(lis)
    
    lis.remove(3)
    print(lis)
    

    输出

    [1, 2, 3, 'a', 'b']
    [1, 2, 'a', 'b']
    

    注意
    remove()方法只删除第一个指定的值
    如我们列表中有两个元素的值为 3

    lis = [1, 2, 3, 'a', 'b', 3]
    print(lis)
    
    lis.remove(3)
    print(lis)
    

    输出

    [1, 2, 3, 'a', 'b', 3]
    [1, 2, 'a', 'b', 3]
    

    可以看出只删除了第一次出现的3
    我们可以用循环来删除所有的3

    lis = [1, 2, 3, 'a', 'b', 3]
    print(lis)
    
    while 3 in lis:
        lis.remove(3)
    print(lis)
    

    输出

    [1, 2, 3, 'a', 'b', 3]
    [1, 2, 'a', 'b']
    
  • 相关阅读:
    C# Guid should contain 32 digits with 4 dashes (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx).
    C# Collection was modified;enumeration operation may not execute
    C# 写文件
    AJAX 入门教程
    ABP 软删除ISoftDelete
    C# 随机列表
    C# ConfigurationManager 类的使用
    mui 关闭当前窗口
    C# 委托
    VSTO:使用C#开发Excel、Word【13】
  • 原文地址:https://www.cnblogs.com/lykkk/p/11448773.html
Copyright © 2020-2023  润新知