在python中,[]表示的是列表。列表有各种操作命令。
1、append()方法,添加一个元素到列表尾部。
注意append()方法与extend()方法有区别:list.append(object) 向列表中添加一个对象object而list.extend(sequence) 把一个序列seq的内容添加到列表中
例如:
1 names=["hongtao","xiaoweihong","hongyuchan",["show530","luby"],"hongpingshui","guochaoxi"] 2 names2=["liuyi","zhangsong"] 3 4 names.extend(names2) 5 print(names) 6 7 >>>>>>> 8 [‘hongtao‘, ‘xiaoweihong‘, ‘hongyuchan‘, [‘show530‘, ‘luby‘], ‘hongpingshui‘, ‘guochaoxi‘, ‘liuyi‘, ‘zhangsong‘] 9 ___________________________________________________ 10 11 names=["hongtao","xiaoweihong","hongyuchan",["show530","luby"],"hongpingshui","guochaoxi"] 12 names2=["liuyi","zhangsong"] 13 14 names.append(names2) 15 print(names) 16 17 >>>>>>>>> 18 [‘hongtao‘, ‘xiaoweihong‘, ‘hongyuchan‘, [‘show530‘, ‘luby‘], ‘hongpingshui‘, ‘guochaoxi‘, [‘liuyi‘, ‘zhangsong‘]]
2、关于 remove(),pop(),以及del列表操作的相同点和不同点:
(1)remove 是删除首个符合条件的元素。并不是删除特定的索引。
1 >>> a = [0, 2, 2, 3]
2 >>> a.remove(2)
3 >>> a
4 [0, 2, 3]
(2)对于 del 来说,它是根据索引(元素所在位置)来删除的。
1 >>> a = [3, 2, 2, 1]
2 >>> del a[1]
3 [3, 2, 1]
(3)pop返回的是你弹出的那个数值。
1 >>> a = [4, 3, 5]
2 >>> a.pop(1)
3 3
4 >>> a
5 [4, 5]
3、关于深度COPY和浅度COPY的区别:
简单地说,深度COPY就是把A列表简单的复制一份,跟A列表一模一样。而浅度COPY复制的时候遭遇到列表中包含列表的情况的话,他只复制内存地址。
例如以下代码:
1 import copy 2 names=["hongtao","xiaoweihong","hongyuchan",["show530","luby"],"hongpingshui","guochaoxi"] 3 names2=copy.copy(names) 4 names[3][0]="SHOW530" 5 names[3][1]="LUBY" 6 print(names2) 7 8 输出结果>>>>>>> 9 10 [‘hongtao‘, ‘xiaoweihong‘, ‘hongyuchan‘, [‘SHOW530‘, ‘LUBY‘], ‘hongpingshui‘, ‘guochaoxi‘] 11 12 13 import copy 14 names=["hongtao","xiaoweihong","hongyuchan",["show530","luby"],"hongpingshui","guochaoxi"] 15 names2=copy.deepcopy(names) 16 names[3][0]="SHOW530" 17 names[3][1]="LUBY" 18 print(names2) 19 20 输出结果>>>>>>> 21 22 [‘hongtao‘, ‘xiaoweihong‘, ‘hongyuchan‘, [‘show530‘, ‘luby‘], ‘hongpingshui‘, ‘guochaoxi‘]
4、关于列表中元素的位置表示方法及间隔
names[0:-1] 表示从列表names中第一个元素到最后一个元素;
names[0:-1:2] 表示从列表names中第一个元素到最后一个元素,步长为2,每个元素间隔1
names[0:-1:2]有时也会简写成names[::2]如果步长是1,那么可以简写为names[:]