Python 第三节 第五课

举报
我是小白呀iamarookie 发表于 2021/09/10 23:41:34 2021/09/10
【摘要】 [toc] 列表元素的增加和删除     当列表增加和删除元素是, 列表会自动进行内存管理, 大大减少了程序员的负担. 但这个特点涉及列表元素的大量移动, 效率较低. 除非必要, 我们一般只在列表的尾部添加元素或删除元素, 这会大大提高列表的操作效率. append() 方法     原地...

[toc]

列表元素的增加和删除

    当列表增加和删除元素是, 列表会自动进行内存管理, 大大减少了程序员的负担. 但这个特点涉及列表元素的大量移动, 效率较低. 除非必要, 我们一般只在列表的尾部添加元素或删除元素, 这会大大提高列表的操作效率.

append() 方法

    原地修改列表对象, 是真正的列表尾部添加新的元素, 速度最快, 推荐使用.

    >>>  a = [20, 40]

    >>>  a.append(80)

    >>>  a

    [20, 40, 80]

+ 运算符操作

并不是真正的尾部添加元素, 而是创建新的对象. 将原列表的元素和新列表的元素一次复制到新的列表对象中. 这样会涉及大量的复制操作, 对于操作大量元素不建议使用.

>>> a = [20, 40]

>>> id(a)

46016072

>>> a = a + [50]

>> id(a)

46015432

通过如上测试, 我们发现变量 a 的地址发生了变化. 也就是创建了新的列表对象.

extend() 方法

将目标列表所有元素添加本列表的尾部, 属于原地操作, 不创建新的列表对象.

>>> a = [20, 40]

>>> id(a)

46016072

>>> a.extend([50,60])

>>> id(a)

46016072

insert() 插入元素

使用 insert() 方法可以将指定的元素插入到列表对象的任意制定位置. 这样会让插入位置后面所有的元素进行移动, 会影响处理速度. 涉及大量元素时,尽量避免使用. 类似发生这种移动的函数还有: remove(), pop(), del(), 它们在删除非尾部元素时也会发生操作位置后面元素的移动.

 

文章来源: iamarookie.blog.csdn.net,作者:我是小白呀,版权归原作者所有,如需转载,请联系作者。

原文链接:iamarookie.blog.csdn.net/article/details/108819043

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。