Fork me on GitHub

随笔 - 997  文章 - 5  评论 - 181  阅读 - 300万 

  在操作list的时候,经常用到对列表的操作运算,比如说,列表添加,删除操作,其实,这里面经常回遇到这样一个问题,就是列表的操作容易被混淆了。

有人做了一个总结,这个很清晰,我就不多做阐述了:

1.append()  向列表尾部追加一个新元素,列表只占一个索引位,在原有列表上增加
2.extend() 向列表尾部追加一个列表,将列表中的每个元素都追加进来,在原有列表上增加
3.+  直接用+号看上去与用extend()一样的效果,但是实际上是生成了一个新的列表存这两个列表的和,只能用在两个列表相加上
4.+= 效果与extend()一样,向原列表追加一个新元素,在原有列表上增加
  这里面还有一个问题,就是怎么对list进行加减的操作,很多人都容易把+ -号直接用到加减运算,这样很容易出错。其实,加减的有另外的操作方法:
我写了一个例子,能够清晰的解释了几个的差别和异同,如下所示:
复制代码
 1 import numpy as np
 2 
 3 left = []
 4 right = []
 5 
 6 data1 = [12,12,12,12,12,12,12]
 7 data2 = [12,12,12,12,12,12,12]
 8 data3 = []
 9 for item in data1:
10     left.append(item)
11 
12 for item1 in data2:
13     right.append(item1)
14 
15 aleft = np.array(left)
16 bleft = np.array(right)
17 
18 cleft = aleft - bleft
19 dleft = aleft + bleft
20 print("list a sub list b:")
21 print(cleft)
22 print("list a add list b:")
23 print(dleft)
24 print("list a append list b:")
25 cleft = data1 + data2
26 data1.append(data2)
27 print(cleft)
28 print(data1)
29 print("list a extend list b:")
30 data3.extend(data2)
31 print(data3)
复制代码

  运行结果:

复制代码
list a sub list b:
[0 0 0 0 0 0 0]
list a add list b:
[24 24 24 24 24 24 24]
list a append list b:
[12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12]
[12, 12, 12, 12, 12, 12, 12, [12, 12, 12, 12, 12, 12, 12]]
list a extend list b:
[12, 12, 12, 12, 12, 12, 12]
复制代码
posted on   虚生  阅读(7240)  评论(0编辑  收藏  举报
编辑推荐:
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
阅读排行:
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
点击右上角即可分享
微信分享提示