python中列表添加元素的几种方式(+、append()、extend())
作者:程序遇上智能星空 发布时间:2022-07-17 19:59:42
1、使用+加号
+加号是将两个list列表相加,返回一个新的列表对象,会消耗额外的内存。
#!/usr/bin/env python
# -*- coding:utf-8 -*-
if __name__ == '__main__':
a = [1, 2, 3]
b = [4, 5, 6]
c = a + b
print(c)
输出:
[1, 2, 3, 4, 5, 6]
Process finished with exit code 0
2、使用append()方法
append()方法在列表的末尾添加新的对象,该方法无返回值,但是会修改原来的列表。
语法:list.append(obj)
参数:obj – 添加到列表末尾的对象。
#!/usr/bin/env python
# -*- coding:utf-8 -*-
if __name__ == '__main__':
a = [1, 2, 3]
b = [4, 5, 6]
a.append(b)
print(a)
输出:
[1, 2, 3, [4, 5, 6]]
Process finished with exit code 0
3、使用extend()方法
extend()方法用新列表扩展原来的列表,会把对象迭代添加到列表后面,只支持可迭代对象的数据。(可迭代对象: 能用for循环进行迭代的对象就是可迭代对象, 比如:字符串,列表,元组,字典,集合等等)
该方法没有返回值,但会在已存在的列表中添加新的列表内容。
语法:list.extend(seq)
参数:seq – 元素列表。
#!/usr/bin/env python
# -*- coding:utf-8 -*-
if __name__ == '__main__':
a = [1, 2, 3]
b = [4, 5, 6]
a.extend(b)
print(a)
输出:
[1, 2, 3, 4, 5, 6]
Process finished with exit code 0
4、难点
#!/usr/bin/env python
# -*- coding:utf-8 -*-
if __name__ == '__main__':
a = [1, 2, 3]
c = []
c.append(a)
print(c)
a.append(4)
print(c)
输出:
[[1, 2, 3]]
[[1, 2, 3, 4]]
Process finished with exit code 0
可以看到改变a列表以后,c列表也发生了改变。
出现这种现象的原因:因为list列表使用append()方法追加时,实际上是浅拷贝造成的。
解决方法:可以使用copy.deepcopy()进行深拷贝。
#!/usr/bin/env python
# -*- coding:utf-8 -*-
import copy
if __name__ == '__main__':
a = [1, 2, 3]
c = []
c.append(copy.deepcopy(a))
print(c)
a.append(4)
print(c)
输出:
[[1, 2, 3]]
[[1, 2, 3]]Process finished with exit code 0
来源:https://blog.csdn.net/kevinjin2011/article/details/125536933


猜你喜欢
- 事件背景最近业务研发反映了一个需求:能不能让现有基于 gin 的 webservice 框架能够自己输出 response 的信息,尤其是
- 本文实例讲述了php实现的简单检验登陆类。分享给大家供大家参考。具体如下:<?phpclass checklogin{ v
- class torch.nn.Sequential(* args)一个时序容器。Modules 会以他们传入的顺序被添加到容器中。当然,也可
- 简介ping (Packet Internet Groper)是一种因特网包探索器,用于测试网络连接量的程序 。Ping是工作在 TCP/I
- 对于简单的网络例如全连接层Linear可以使用以下方法打印linear层:fc = nn.Linear(3, 5)params = list
- 要自己写一个存储系统,可以依照以下步骤:1.写一个继承自django.core.files.storage.Storage的子类。from
- 1、一次二次多项式拟合一次二次比较简单,直接使用numpy中的函数即可,polyfit(x, y, degree)。2、指数幂数拟合curv
- 判断访问是否来自搜索引擎的函数,有兴趣的可以试试! <% '检查当前用户是否是蜘蛛人 Function check(
- 这样就将你所有微信好友的信息都返回了,我们并不需要这么多的信息,我们选取一些信息存储到 csv 文件中注意:返回的信息是一个 list,其中
- 我们知道,TypeScript 支持 infer 来提取类型的一部分,通过模式匹配的方式。模式匹配比如元组类型提取最后一个元素的类型:typ
- 背景: 由于工作需要,现在有这么一个需求,要合并大量的word文档,而且要在不同的目录
- 测试数据 http://grouplens.org/datasets/movielens/协同过滤推荐算法主要分为:1、基于用户。根据相邻用
- 本文实例讲述了Python使用urllib2模块实现断点续传下载的方法。分享给大家供大家参考。具体分析如下:在使用HTTP协议进行下载的时候
- link(){var olink = getElementById("link");var text = olink.i
- UDPUDP是面向无连接的通讯协议,UDP数据包括目的端口号和源端口号信息,由于通讯不需要连接,所以可以实现广播发送。 UDP传输数据时有大
- pygame城市之战横版射击游戏,按上下左右方向箭头操作飞机。这是一个横板射击小游戏,在黑夜的城市上空,你将要操作一架飞机去射击敌机, * 效
- 去空格函数有如下两种:·LTRIM()LTRIM() 函数把字符串头部(左)的空格去掉,其语法如下:LTRIM (<character
- 在.net 1.1中我们要实现压缩这一功能,一般都是用open source的SharpZipLib 或者调用
- 本文实例为大家分享了python实现名片管理系统源代码,供大家参考,具体内容如下import osdef print_menu(): pri
- 数据类型描述CHARACTER(n)字符/字符串。固定长度 n。VARCHAR(n) 或 CHARA