python中对列表的删除和添加方法详解

目录
  • 删除
    • 1.pop(index)
    • 2.remove(item)
    • 3.dellist[index]
    • 4.clear()
  • 添加
    • 1.append(obj)
    • 2.extend(obj)
    • 3.insert(index,obj)
  • 总结

删除

1.pop(index)

删除列表中指定索引处的元素,默认删除列表中最后一个元素,返回删除值。

list1 = [1, 2, 3, 5, 8, '3']
print(list1.pop(3))
print(list1)
print(list1.pop())
print(list1)
print(list1.pop(-1))
print(list1)

5
[1, 2, 3, 8, '3']

3
[1, 2, 3, 8]

8
[1, 2, 3]

2.remove(item)

根据元素值进行删除,只会删除第一个与指定值相同的元素,不返回删除值。

注:必须保证列表中该元素值存在,否则会引发ValueError错误。

list2 = [1, 3, 3, 5, '3']
print(list2.remove(3))
print(list2)
list2.remove(9)

None
[1, 3, 5, '3']
Traceback (most recent call last):
  File "C:/Users/chenh/PycharmProjects/pythonProject/main.py", line 4, in <module>
    list2.remove(9)
ValueError: list.remove(x): x not in list

3.del list[index]

不仅可以删除整个列表,还可以删除列表中的某些元素,不返回删除值。

注:print(del list[index])会报错

list3 = ['Python', 'C', 'Go', 'C++', 'Java', 'VB', 'JavaScript', 'PHP']
del list3[2]
print(list3)
del list3[-2]
print(list3)
del list3[2:4]
print(list3)
list3.extend(["SQL", "C#", "Swift"])
print(list3)
del list3[-5:-2]
print(list3)

['Python', 'C', 'C++', 'Java', 'VB', 'JavaScript', 'PHP']

['Python', 'C', 'C++', 'Java', 'VB', 'PHP']

['Python', 'C', 'VB', 'PHP']

['Python', 'C', 'VB', 'PHP', 'SQL', 'C#', 'Swift']
['Python', 'C', 'C#', 'Swift']

删除中间一段元素时,格式为del[start:end]

其中start为起始索引,end为结束索引。del会删除从start到end的之间的元素,不包括end位置的元素。

4.clear()

删除列表中的所有元素,不返回删除值。

list4 = [1, 2, 3, 5, 8, '3']
print(list4.clear())
print(list4)

None
[]

添加

1.append(obj)

添加到列表末尾,可以是元素、列表、元组。

list1 = ['C', 'Python', 'Java']
list1.append('Go')
print(list1)
t = ('Javascript', 'Python', 'C#')
list1.append(t)
print(list1)
list1.append(['VB', 'PHP'])
print(list1)

['C', 'Python', 'Java', 'Go']
['C', 'Python', 'Java', 'Go', ('Javascript', 'Python', 'C#')]
['C', 'Python', 'Java', 'Go', ('Javascript', 'Python', 'C#'), ['VB', 'PHP']]

2.extend(obj)

不会把列表或元组视为一个整体,而是把它们包含的元素逐个添加到列表中。

注:不能添加单个数字

list2 = ['C', 'Python', 'Java']
list2.extend('Go')
print(list2)
t = ('Javascript', 'Python', 'C#')
list2.extend(t)
print(list2)
list2.extend(['VB', 'PHP'])
print(list2)

['C', 'Python', 'Java', 'G', 'o']
['C', 'Python', 'Java', 'G', 'o', 'Javascript', 'Python', 'C#']
['C', 'Python', 'Java', 'G', 'o', 'Javascript', 'Python', 'C#', 'VB', 'PHP']

3.insert(index, obj)

将obj插入到第index位置。

当插入列表或元组时,insert()也会将其视为一个整体。

list3 = ['C', 'Python', 'Java']
list3.insert(1, 'C++')
print(list3)
t = ('Javascript', 'Python', 'C#')
list3.insert(2, t)
print(list3)
list3.insert(2, ['VB', 'PHP'])
print(list3)

['C', 'C++', 'Python', 'Java']
['C', 'C++', ('Javascript', 'Python', 'C#'), 'Python', 'Java']
['C', 'C++', ['VB', 'PHP'], ('Javascript', 'Python', 'C#'), 'Python', 'Java']

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注我们的更多内容!

(0)

相关推荐

  • python 列表、字典和集合的添加和删除操作

    在python中,元组不可变,只能查询不能修改,列表.字典和集合的基本操作,各不相同,下面就来比较一下它们的添加和删除操作吧. 添加 一.列表 1."+"号 #两个数组相加,生成一个大数组 a = [1, 2, 3] b = [4, 5, 6] c = a + b print(c) #输出结果:[1, 2, 3, 4, 5, 6] 2.extend方法 #只接受列表参数并将参数的每个元素都添加到原有的列表中 a = [1, 2, 3] b = [4, 5, 6] a.extend(b)

  • Python 列表中的修改、添加和删除元素的实现

    本文介绍的是列表中的修改.添加和删除元素.第一次写博客,如果本文有什么错误,还请大家评论指正.谢谢! 创建的列表大多数都将是动态的,这就意味着列表创建后,将随着程序的运行删减元素. 修改列表元素 修改元素的的语法与访问列表的语法类似. 假设有一个列表motorcycles,其中第一个元素为'honda',修改第一个元素的值 motorcycles = ['honda','yamaha','suzuki'] print(motorcycles) motorcycles[0] = 'ducati'

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

    目录 del:根据索引值删除元素 pop():根据索引值删除元素 remove():根据元素值进行删除 clear():删除列表所有元素 在 Python 列表中删除元素主要分为以下 3 种场景: 根据目标元素所在位置的索引进行删除,可以使用 del 关键字或者 pop() 方法: 根据元素本身的值进行删除,可使用列表(list类型)提供的 remove() 方法: 将列表中所有元素全部删除,可使用列表(list类型)提供的 clear() 方法. del:根据索引值删除元素 del 是 Pyt

  • python列表数据增加和删除的具体实例

    1.使用 append 函数来为列表 list 添加数据,默认将数据追加在末尾. # !usr/bin/env python # -*- coding:utf-8 _*- """ @Author:猿说编程 @Blog(个人博客地址): www.codersrc.com @File:python列表list.py @Time:2021/3/22 00:37 @Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累! ""&quo

  • Python中使用遍历在列表中添加字典遇到的坑

    """ 已知列表li = [{"key": 5}, {"key": 9}, {"key": -1}, {"key": 4}] , 定义一个函数,将该列表按照其元素的value 值进行排序,并输出结果 """ 思路很清晰,新建一个列表,然后遍历取出字典的值加入到新的列表中,再通过遍历,赋值字典,使用append方法依次添加到列表,这样就是一个按照value值排续.于是有

  • python中for循环把字符串或者字典添加到列表的方法

    python中如何for循环把字符串添加到列表? 实例: 1.单个字符串用for循环添加到列表中: # 把L1中的字符串添加到列表alist里面 L1 = 'MJlifeBlog' alist = [] # 可以用forin来迭代L1并保存值到x变量里头即可. # 接着在for循环里边用append方法即可把解析到的单个字符添加到列表了. for x in L1: alist.append(x) print(alist) 2.多个字符串用for循环添加到列表中: # 如果需要把多个字符串添加到列

  • python中对列表的删除和添加方法详解

    目录 删除 1.pop(index) 2.remove(item) 3.dellist[index] 4.clear() 添加 1.append(obj) 2.extend(obj) 3.insert(index,obj) 总结 删除 1.pop(index) 删除列表中指定索引处的元素,默认删除列表中最后一个元素,返回删除值. list1 = [1, 2, 3, 5, 8, '3'] print(list1.pop(3)) print(list1) print(list1.pop()) pri

  • Python列表元素删除和remove()方法详解

    删除列表中元素的方法有三种: 1. del命令 使用del命令能够删除列表中指定位置上的元素,也可以删除整个列表. 2. pop( )方法 使用列表的pop()方法能够删除并返回列表指定位置(默认为最后一个位置)的元素. 3. remove方法 使用列表的remove()方法能够删除列表中首次出现的指定元素,如果列表中不存在该元素则抛出异常.有的时候可能需要删除列表中某一大量重复的数据,我们很容易就会想到列表的remove()方法,例如: x=[1,2,1,2,1,2,1,2] y=[1,1,2

  • 在python中按照特定顺序访问字典的方法详解

    最近使用python写一些东西,在参考资料的时候发现字典是没有顺序的,那么怎么样按照一定顺序访问字典呐,我找到了一个小方法: 假设一个字典是: D = {'a': '1', 'b': '2', 'c': '3'} 如果我们要按照a, b, c的顺序访问字典,可以借助一个列表,比如说: L = list(D.keys()) L.sort() for key in L: print(key, 'is' D[key]) 输出为: a is 1 b is 2 c is 3 需要倒序的话只需使用倒序函数排

  • Python中提取人脸特征的三种方法详解

    目录 1.直接使用dlib 2.使用深度学习方法查找人脸,dlib提取特征 3.使用insightface提取人脸特征 安装InsightFace 提取特征 1.直接使用dlib 安装dlib方法: Win10安装dlib GPU过程详解 思路: 1.使用dlib.get_frontal_face_detector()方法检测人脸的位置. 2.使用 dlib.shape_predictor()方法得到人脸的关键点. 3.使用dlib.face_recognition_model_v1()方法提取

  • python中DataFrame数据合并merge()和concat()方法详解

    目录 merge() 1.常规合并 ①方法1 ②方法2 重要参数 合并方式 left right outer inner 2.多对一合并 3.多对多合并 concat() 1.相同字段的表首位相连 2.横向表合并(行对齐) 3.交叉合并 总结 merge() 1.常规合并 ①方法1 指定一个参照列,以该列为准,合并其他列. import pandas as pd df1 = pd.DataFrame({'id': ['001', '002', '003'], 'num1': [120, 101,

  • Python中import导入不同目录的模块方法详解

    测试的目录如下: root    ├── module_root.py    ├── package_a    │   ├── child    │   │   ├── __init__.py    │   │   └── child_a.py    │   ├── module.py    │   └── module_a.py    └── package_b        └── module_b.py 每个文件中的内容如下(__init__.py文件可以为空): print(__name

  • Python创建空列表的字典2种方法详解

    如果要在 Python 中创建键值是空列表的字典,有多种方法,但是各种方法之间是否由区别?需要作实验验证,并且分析产生的原因.本文针对两种方法做了实验和分析. 如果要在 Python 中创建一个键值都是列表的字典,类似下面这样,该怎么做? {1:[], 2:[], 3:[], 4:[]} 方法1,字典构造器 用 dict 构造器生成,构造(key,value)对 > key = [1, 2, 3, 4] > a = dict([(k,[]) for k in key]) > a {1:

  • Python 中判断列表是否为空的方法

    在判断列表是否为空时,你更喜欢哪种方式?决定因素是什么? 在 Python 中有很多检查列表是否是空的方式,在讨论解决方案前,先说一下不同方法涉及到的不同因素. 我们可以把判断表达式可以分为两个阵营: 对空列表的显式比较 对空列表的隐式求值 这意味着什么? 显式比较 我们从显式比较开始说起,无论我们使用列表符号 [] 还是声明空列表的函数 list() ,遵循的策略是查看待检查列表是否与空列表完全相等. # 都是用来创建空列表 a = [] b = list() print(a == b) #

  • python中list列表复制的几种方法(赋值、切片、copy(),deepcopy())

    目录 1.浅拷贝和深拷贝 2.直接赋值 3.for循环 4.切片 5.copy()方法 (1)list.copy()方法 (2)copy.copy()方法 6.deepcopy()方法 1.浅拷贝和深拷贝 浅拷贝复制指向某个对象的地址(指针),而不复制对象本身,新对象和原对象共享同一内存. 深拷贝会额外创建一个新的对象,新对象跟原对象并不共享内存,修改新对象不会影响到原对象. 赋值其实就是引用了原对象.两者指向同一内存,两个对象是联动的,无论哪个对象发生改变都会影响到另一个. 2.直接赋值 使用

  • Python中zip()函数的解释和可视化(实例详解)

    zip()的作用 先看一下语法: zip(iter1 [,iter2 [...]]) -> zip object Python的内置help()模块提供了一个简短但又有些令人困惑的解释: 返回一个元组迭代器,其中第i个元组包含每个参数序列或可迭代对象中的第i个元素.当最短的可迭代输入耗尽时,迭代器将停止.使用单个可迭代参数,它将返回1元组的迭代器.没有参数,它将返回一个空的迭代器. 与往常一样,当您精通更一般的计算机科学和Python概念时,此模块非常有用.但是,对于初学者来说,这段话只会引发更

随机推荐