在python列表中删除元素主要分为以下3种场景:

根据目标元素所在的索引位置进行删除,可以使用del关键字或pop()方法;
根据元素本身的值进行删除,可使用列表(list类型)提供的remove()方法;
将列表中所有元素全部删除,可使用列表(list类型)提供的clear()方法;
del:根据索引值删除元素
del是python中的关键字,专门用来执行删除操作,它不仅可以删除整个列表,还可以删除列表中的某些元素

del可以删除列表中的单个元素,格式为:

del listname[index]
listname:表示列表名

index:表示索引值

list = ["python",1,2,"java"]
print(list)

#使用正数索引
del list[2]
print(list)

#使用负数索引
del list[-1]
print(list)
['python', 1, 2, 'java']
['python', 1, 'java']
['python', 1]

del可以删除中间一段连续的元素,格式为:

del listname[start,end]
start:起始索引

end:结束索引

list = ["python",1,2,"java"]
print(list)
#使用正数索引
del list[2:3]
print(list)

list = ["python",1,2,"java"]
print(list)
#使用负数索引
del list[-3:-1]
print(list)
['python', 1, 2, 'java']
['python', 1, 'java']
['python', 1, 2, 'java']
['python', 'java']

del会删除从开始索引到结束索引之间的元素,不包括end位置的元素

pop():根据索引值删除元素
该方法用来删除列表中指定索引处的元素

语法:listname.pop(index)

listname:表示列表名

index:表示索引值

list = ["python",1,2,"java",78,9,80,90]
print(list)
list.pop(3)
print(list)
['python', 1, 2, 'java', 78, 9, 80, 90]
['python', 1, 2, 78, 9, 80, 90]

如果不写index参数,默认会删除列表中的最后一个元素,类似于数据结构中的“出栈”操作

list = ["python",1,2,"java",78,9,80,90]
print(list)
list.pop()
print(list)
['python', 1, 2, 'java', 78, 9, 80, 90]
['python', 1, 2, 'java', 78, 9, 80]

remove():根据元素值进行删除
该方法会根据元素本身的值来进行删除操作

list = ["python",1,2,"java",78,9,80,90,2,34,2]
print(list)
#第一次删除2
list.remove(2)
print(list)
#第一次删除2
list.remove(2)
print(list)
#第一次删除2
list.remove(2)
print(list)
['python', 1, 2, 'java', 78, 9, 80, 90, 2, 34, 2]
['python', 1, 'java', 78, 9, 80, 90, 2, 34, 2]
['python', 1, 'java', 78, 9, 80, 90, 34, 2]
['python', 1, 'java', 78, 9, 80, 90, 34]

注意:remove()方法只会删除第一个和指定值相同的元素,而且必须保证该元素是存在的,否则会引发ValueError错误,所以我们在使用remove()删除元素时最好提前判断一下

clear():删除所有元素
clear()用来删除列表的所有元素,也即清空列表

语法:listname.clear()

listname:表示列表名

list = ["python",1,2,"java",78,9,80,90,2,34,2]
print(list)
list.clear()
print(list)
['python', 1, 2, 'java', 78, 9, 80, 90, 2, 34, 2]

Python list 中删除元素的方法的更多相关文章

  1. PHP从数组中删除元素的方法

    PHP从数组中删除元素的方法 本篇文章主要介绍了PHP从数组中删除元素的四种方法实例 删除一个元素,且保持原有索引不变 使用 unset 函数,示例如下: 1 2 3 4 5 <?php   $ ...

  2. Jquery中删除元素方法

    empty用来删除指定元素的子元素,remove用来删除元素,或者设定细化条件执行删除 语法: empty() remove(expr); empty用来删除指定元素的子元素,remove用来删除元素 ...

  3. PHP从数组中删除元素的四种方法实例

    PHP从数组中删除元素的四种方法实例 一.总结 一句话总结:unset(),array_splice(),array_diff(),array_diff_key() 二.PHP从数组中删除元素的四种方 ...

  4. Python简单遍历字典及删除元素的方法

    Python简单遍历字典及删除元素的方法 这篇文章主要介绍了Python简单遍历字典及删除元素的方法,结合实例形式分析了Python遍历字典删除元素的操作方法与相关注意事项,需要的朋友可以参考下 具体 ...

  5. python中列表元素连接方法join用法实例

    python中列表元素连接方法join用法实例 这篇文章主要介绍了python中列表元素连接方法join用法,实例分析了Python中join方法的使用技巧,非常具有实用价值,分享给大家供大家参考. ...

  6. python去除列表中重复元素的方法

    列表中元素位置的索引用的是L.index 本文实例讲述了Python去除列表中重复元素的方法.分享给大家供大家参考.具体如下: 比较容易记忆的是用内置的set 1 2 3 l1 = ['b','c', ...

  7. 遍历List过程中删除元素的正确做法(转)

    遍历List过程中删除元素的正确做法   public class ListRemoveTest {     3 public static void main(String[] args) { 4 ...

  8. [python爬虫] Selenium常见元素定位方法和操作的学习介绍(转载)

    转载地址:[python爬虫] Selenium常见元素定位方法和操作的学习介绍 一. 定位元素方法 官网地址:http://selenium-python.readthedocs.org/locat ...

  9. 孤荷凌寒自学python第二十四天python类中隐藏的私有方法探秘

    孤荷凌寒自学python第二十四天python类中隐藏的私有方法探秘 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 今天发现了python的类中隐藏着一些特殊的私有方法. 这些私有方法不管我 ...

  10. 如何从List中删除元素

    从List中删除元素,不能通过索引的方式遍历后删除,只能使用迭代器. 错误的实现 错误的实现方法 public class Demo {     public static void main(Str ...

随机推荐

  1. spring--JDK动态代理的实现原理

    JDK 动态代理的实现原理涉及到 Java 的反射机制.它允许在运行时动态创建一个代理类,这个代理类实现了一组接口,并将所有方法调用转发到一个 InvocationHandler 实例.下面是 JDK ...

  2. 修改elasticsearch默认索引返回数

    1. 背景 (1) 客户反映es查询只能返回10000个数据,而需求时返回1.9W个数据,因此需要设置对应索引的默认返回数index.max_result_window (2) 给客户部署的服务以do ...

  3. SV OOP-2

    静态变量 继承性(Inheritance) 抽象类和虚方法virtual methods 多态(Ploymorphism) 通过基类的变量可以使用子类的对象 基类中定义的virtual functio ...

  4. vocode-markdown导出pdf插件

    1. 背景 在vocode中编辑markdown格式文本文件,并将其导出为pdf格式文件 2. 插件 在 vscode的扩展市场中搜索插件"Markdown PDF" 并安装 选中 ...

  5. Shell-函数-function

  6. Matplotlib.pyplot.scatter 散点图绘制

    Matplotlib.pyplot.plot 绘图 matplotlib.pyplot.scatter(x, y, s=None, c=None, marker=None, cmap=None, no ...

  7. [转帖]Linux之bash反弹shell原理浅析

    环境 攻击机:kali            ip:192.168.25.144 靶    机:centos      ip:192.168.25.142 过程 kali 监听本地8888端口 靶机 ...

  8. [转帖]​Linux开源存储漫谈(2)IO性能测试利器fio

    fio(Flexible I/O Tester)正是非常常用的文件系统和磁盘 I/O 性能基准测试工具.提供了大量的可定制化选项,可以用来测试,裸盘.一个单独的分区或者文件系统在各种场景下的 I/O ...

  9. [转帖]C2C - False Sharing Detection in Linux Perf

    https://joemario.github.io/blog/2016/09/01/c2c-blog/ Do you run your application in a NUMA environme ...

  10. CentOS7升级Glibc到超过2.17版本无法启动的解决办法

    CentOS7升级Glibc到超过2.17版本无法启动的解决办法 背景 今天有同事告知服务器宕机无法启动. 提示信息为: [sda] Assuming drive cache: write throu ...