鱼C论坛

 找回密码
 立即注册
查看: 1676|回复: 6

[技术交流] 列表list的插入和删除元素方式辨析(新手必看)

[复制链接]
发表于 2020-5-28 11:26:09 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 艾米Aimee 于 2020-5-28 15:30 编辑

插入方式辨析:


1 append

append添加新的元素至列表末尾,类似入栈操作。举例:
t = ['a', 'b', 'c']
t.append('d')
print(t)
#结果:['a', 'b', 'c', 'd']


2 extend

extend本意是扩展列表,将整个列表扩充至原列表后面。举例:
t1 = ['a', 'b', 'c']
t2 = ['d', 'e']
t1.extend(t2)
print(t1)
#结果:['a', 'b', 'c', 'd', 'e']

3 insert

s.insert(i, x),将 x 元素插入到 s 列表中的 i 位置(其它元素依次往后递推)。
所以,s.insert(0, x) 是将 x 元素插入到 s 列表的开头;
s.insert(len(s), x) 则是将 x 元素插入到 s 列表的末尾,等同于 s.append(x)
举例:
t1=['a', 'b', 'c','e']
t1.insert(3,'d')
print(t1)
#结果:['a', 'b', 'c', 'd', 'e']


删除方式辨析:

1 pop

pop可以简单理解为类似出栈操作。
pop会删除指定位置的元素,并且返回该元素。
如果你没有提供删除元素的位置,pop会删除列表的最后一个元素,并返回值。
举例:
t = ['a', 'b', 'c']
x = t.pop(1)
print(t,x)
#结果:['a', 'c'] b

2 remove

remove移除一个元素,并且返回值为none
已知被删除元素的值,remove会删除该列表中第一个符合值的元素。举例:
t = ['a', 'b', 'c','b']
t.remove('b')
print(t)
#结果:['a', 'c', 'b']

3 del

del为delete的简写,删除指定位置、指定范围的元素,如果不需要删除的元素,可以使用del。
del可以删除单个元素,也可以删除一片元素。
删除单个元素:
t = ['a', 'b', 'c']
del t[1]
print(t)
#结果:['a', 'c']
删除指定范围元素:
t = ['a', 'b', 'c', 'd', 'e', 'f']
del t[1:5]
print(t)
#结果:['a', 'f']
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-5-28 12:50:39 | 显示全部楼层
用法二:已知被删除元素的位置,remove会删除该位置元素。
强烈不建议
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-5-28 15:19:17 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-28 15:20:48 | 显示全部楼层

效率爆炸
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-5-28 15:26:34 | 显示全部楼层

哦哦是这样,我还没有写过很多行的,所以不知道这个。语法上没错误,就是执行效率低,对吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-28 15:28:28 | 显示全部楼层
艾米Aimee 发表于 2020-5-28 15:26
哦哦是这样,我还没有写过很多行的,所以不知道这个。语法上没错误,就是执行效率低,对吧


是的,有这种需要建议直接del
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-5-28 15:30:06 | 显示全部楼层
永恒的蓝色梦想 发表于 2020-5-28 15:28
是的,有这种需要建议直接del

好的,那我把这个用法删掉。谢谢永恒的蓝色梦想~

评分

参与人数 1荣誉 +1 收起 理由
永恒的蓝色梦想 + 1 鱼C有你更精彩^_^

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-21 01:04

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表