列表的操作
增
- 列表赋值
names = ['a','b','c','d','e','f'] print(names)
#['a', 'b', 'c', 'd', 'e', 'f']
- 插入
names = ['a','b','c','d','e','f'] names.append('g') #插到最后 names.insert(1,'a1') #指定位置插入 print(names)
#['a', 'a1', 'b', 'c', 'd', 'e', 'f', 'g']
- 列表合并
names = ['a','b','c','d','e','f'] names2 = [1,2,3,4,5] names.extend(names2) #列表合并不会删除被合并列表 print(names,names2)
#['a', 'b', 'c', 'd', 'e', 'f', 1, 2, 3, 4, 5] [1, 2, 3, 4, 5]
查
- 切片
names = ['a','b','c','d','e','f'] print(names) print(names[2]) print(names[3:5]) # 顾头不顾尾 print(names[:2]) # =[0:2],0可以省略 print(names[-4:-1]) print(names[-4:])
print(names[0:5:2]) #步长切片
'''
['a', 'b', 'c', 'd', 'e', 'f']
c
['d', 'e']
['a', 'b']
['c', 'd', 'e']
['c', 'd', 'e', 'f']
['a', 'c', 'e']
'''
- 索引
names = ['a','b','c','d','e','f'] print(names.index('d')) #索引 print(names[names.index('d')])
'''
3
d
'''
- 统计
names = ['a','b','c','d','e','f','f','f','f'] print(names.count('f')) #统计 #4
改
names = ['a','b','c','d','e','f'] names[3] = 'd9' print(names) #['a', 'b', 'c', 'd9', 'e', 'f']
删
- 删除
names = ['a','b','c','d','e','f'] names.remove('c') del names[1] names.pop() #指定位置删除,不指定默认删除最后一个:names.pop(3) = del names[3] print(names) #['a', 'd', 'e']
- 删除变量
names = ['a','b','c','d','e','f'] del names print(names) #NameError: name 'names' is not defined
- 清空列表
names = ['a','b','c','d','e','f','f','f','f'] names.clear() #清空列表 print(names) #[]
其他
- 浅copy
names = ['a','b','c','d','e',[0,1,2],'f']
names2 = names.copy() #copy为浅copy,只copy第一层列表,第二层列表复制的是内存地址
#import copy,names2=copy.copy(name) 同样为浅copy
names[2] = 'CC'
names[5][1] = 155 #names2第二层列表会随之变化
print(names)
print(names2)
'''
['a', 'b', 'CC', 'd', 'e', [0, 155, 2], 'f']
['a', 'b', 'c', 'd', 'e', [0, 155, 2], 'f']
'''
- 深copy
import copy
names = ['a','b','c','d','e',[0,1,2],'f']
names2 = copy.deepcopy(names) #深copy会导致占用双倍内存,慎用
names[2] = 'CC'
names[5][1] = 155
print(names)
print(names2)
'''
['a', 'b', 'CC', 'd', 'e', [0, 155, 2], 'f']
['a', 'b', 'c', 'd', 'e', [0, 1, 2], 'f']
'''
- 翻转
names = ['a','b','c','d','e','f','f','f','f','1','F','@','56']
names.reverse() #翻转
print(names)
#['56', '@', 'F', '1', 'f', 'f', 'f', 'f', 'e', 'd', 'c', 'b', 'a']
- 排序
names = ['a','b','c','d','e','f','f','f','f','1','F','@','56']
names.sort() #排序
print(names)
#['1', '56', '@', 'F', 'a', 'b', 'c', 'd', 'e', 'f', 'f', 'f', 'f']
- 循环
names = ['a','b','c','d','e',[0,1,2],'f'] for i in names: print(i) ''' a b CC d e [0, 155, 2] f '''

浙公网安备 33010602011771号