几种在Python中List添加、删除元素的方法

news/2025/2/19 8:16:07/

嗨害大家好鸭!我是爱摸鱼的芝士❤

一、python中List添加元素的几种方法

List 是 Python 中常用的数据类型,

它一个有序集合,

即其中的元素始终保持着初始时的定义的顺序

(除非你对它们进行排序或其他修改操作)。

在Python中,
向List添加元素,
方法有如下4种方法
(append(),extend(),insert(), +加号)。


1.append() 追加单个元素到List的尾部,
只接受一个参数,
参数可以是任何数据类型,
被追加的元素在List中保持着原结构类型。

此元素如果是一个list,
那么这个list将作为一个整体进行追加,
注意append()和extend()的区别。

>>> list1=['a','b']
>>> list1.append('c')
>>> list1
['a', 'b', 'c']

2.extend() 将一个列表中每个元素分别添加到另一个列表中,
只接受一个参数;extend()相当于是将list B 连接到list A上。

>>> list1
['a', 'b', 'c']>>>lis2=[]
>>> list2.extend([list1[0],list1[2]])
>>> list1
['a', 'c']

注意:extend与append的区别就是extend可以同时添加多个元素


3.insert() 将一个元素插入到列表中

但其参数有两个(如insert(1,”g”)),

第一个参数是索引点,即插入的位置

第二个参数是插入的元素。

>>> list1
['a', 'b', 'c', 'd']
>>> list1.insert(1,'x')
>>> list1
['a', 'x', 'b', 'c', 'd']
~~~python
4.+ 加号,将两个list相加,会返回到一个新的list对象,注意与前三种的区别。前面三种方法(append, extend, insert)可对列表增加元素的操作,他们没有返回值,是直接修改了原数据对象。 注意:将两个list相加,需要创建新的list对象,从而需要消耗额外的内存,特别是当list较大时,尽量不要使用“+”来添加list,而应该尽可能使用List的append()方法。
~~~python
>>> list1
['a', 'x', 'b', 'c', 'd']
>>> list2=['y','z']
>>> list3=list1+list2
>>> list3
['a', 'x', 'b', 'c', 'd', 'y', 'z']

二、python中List删除元素的几种方法

li = [1,2,3,4,5,6]# 1.使用del删除对应下标的元素
del li[2]
# li = [1,2,4,5,6]# 2.使用.pop()删除最后一个元素
li.pop()
# li = [1,2,4,5]# 3.删除指定值的元素
li.remove(4)
# li = [1,2,5]# 4.使用切片来删除
li = li[:-1]
# li = [1,2,3,4,5]
# !!!切忌使用这个方法,如果li被作为参数传入函数,
# 那么在函数内使用这种删除方法,将不会改变原listli = [1,2,3,4,5,6]
def delete(li, index):li = li[:index] + li[index+1:]
delete(li, 3)
print(li)
# 会输出[1,2,3,4,5,6]

今天的文章就是这样啦~

咱下篇文章再见(✿◡‿◡)

在这里插入图片描述


http://www.ppmy.cn/news/46113.html

相关文章

对矩阵规模序列<5,10,3,12,5,50,6>,求矩阵链最优括号化方案

对矩阵规模序列<5,10,3,12,5,50,6>,求矩阵链最优括号化方案 理解符号的含义 n6 矩阵A1A2A3A4A5A6 本质是找一个最优的子结构 1.重要的递推公式 2.关键是求最小的m[i,j]就是乘积次数最少的。 k 的位置只有 j − i 种可能 3.下面是详细的解题的方案 根据矩阵链乘法问题&am…

【SpringBoot】springboot启动热部署

个人简介&#xff1a;Java领域新星创作者&#xff1b;阿里云技术博主、星级博主、专家博主&#xff1b;正在Java学习的路上摸爬滚打&#xff0c;记录学习的过程~ 个人主页&#xff1a;.29.的博客 学习社区&#xff1a;进去逛一逛~ SpringBoot——手工启动热部署 一、pom.xml导入…

事务相关概念

事务 事务属性&#xff1a;隔离级别1、数据库访问中三个读的问题2、隔离级别介绍3、使用方式 事务属性&#xff1a;隔离级别 事务&#xff1a;逻辑上的一组操作&#xff0c;这些操作要么都成功&#xff0c;有一个失败所有都失败 1、数据库访问中三个读的问题 1、脏读&#x…

网络请求实战-实战websocket聊天程序

目录 WebSocket协议初探 Socket连接的建立过程 聊天室&#xff1a;node.js端 聊天室&#xff1a;web端 小结 WebSocket协议初探 一个基于TCP的通信协议 复用HTTP的握手基于TCP传输协议 101切换协议 WebSocket连接之后&#xff0c;传输的都是二进制数据了 Socket连接的建…

MicroPython ESP8266 GPIO引脚使用详解

MicroPython ESP8266 GPIO引脚使用 &#x1f4cc;相关篇《【MicroPython esp8266】固件烧写教程》 ✨本案例基于Thonny平台开发。✨ &#x1f4dc;固件版本信息&#xff1a;MicroPython v1.19.1 on 2022-06-18; ESP module with ESP8266 &#x1f516;ESP8266可用管脚有&…

连锁店销售管理系统有哪些功能?应该如何选购?

不管是直营还是加盟&#xff0c;想要实现门店的精细化管理&#xff0c;把不同门店的业绩做好&#xff0c;离不开连锁店销售管理系统的支持。 一款真正能够为连锁店经营带来帮助的连锁店销售管理系统应该具备哪些基本功能&#xff0c;以及选择连锁店销售管理系统时有哪些常见的问…

SpringSecurity之权限中JWT应用

目录 前言 什么是J W T 1、访问令牌 2、J W T组成内容 J W T 头 有效载荷 签名哈希 Base64URL算法 前言 上一篇我们讲解了SpringSecurity之微服务权限解决方案&#xff0c;接下来我们看看在微服务中使用到的凭证Tokens的生成工具J W T 什么是J W T 1、访问令牌 自包…

鏖战大模型,未必能拯救商汤

在不被资本市场看好的质疑声中&#xff0c;商汤科技于近日跟风推出了自己的大模型产品&#xff0c;而且还直接打造了一个大模型超市&#xff0c;声称包括CV&#xff08;计算机视觉&#xff09;、NLP&#xff08;​​​​​​​自然语言处理&#xff09;、AIGC&#xff08;人工智…