python基础知识之列表

列表的表现形式为[],里面的元素之间用逗号隔开,元素可以是任意类型,相比于字符串,列表可以存储各种数据类型,而且可以存储大量数据

#列表的主要操作就是增删改查
#增:append insert extend
lis = [1,'a',(1,2,3),'hello']
lis.append('aaa')#append会在列表末尾处添加指定元素aaa,[1, 'a', (1, 2, 3), 'hello', 'aaa']
lis.insert(1,'插入')#insert会在指定索引处插入新元素,[1, '插入', 'a', (1, 2, 3), 'hello', 'aaa']
lis.insert(100,'越界不报错')#当指定的索引超出列表长度时 并不会报错,此时会在末尾处插入元素
lis.extend('abc')#extend会以迭代的方式插入元素,就是把要插入的内容拆分成单个元素再插入
lis.extend(['a','bc','hello'])#但是只会拆分第一级元素,这里可以看出'hello'本身并没有被拆分
print(lis)
[1, '插入', 'a', (1, 2, 3), 'hello', 'aaa', '越界不报错', 'a', 'b', 'c', 'a', 'bc', 'hello']
#删 pop  remove del clear
lis = [1, '插入', 'a', (1, 2, 3), 'hello', 'aaa', 'a', 'b', 'c', 'a', 'bc', 'hello']
res = lis.pop()#pop会按索引去删除,并返回被删除的元素,如果不给索引则默认删除最后一个
lis.remove('aaa')#remove会按照元素值去删除,没有返回值,如果元素不存爱则会报错
del lis[3] #del 和pop类似,也是按照索引删除元素,但是del可以直接删除整个列表,使用del lis
del lis[1:6:2] #del还可以用切片的方式删除元素,注意灵活运用
lis.clear() #clear 方法则会清空列表
#改 
lis = [1, '插入', 'a', (1, 2, 3), 'hello', 'aaa', 'a', 'b', 'c', 'a', 'bc', 'hello']
#列表的修改方式很简单,直接按索引修改
lis[2] = '修改后的元素'
#lis[:] = 'TEST TO LIS'
#lis[1:5] = 'test' #如果用切片的方式修改列表时,会删除指定索引的元素并且将新的值拆分成元素再添加到该位置
lis[0:5] = ['test',1,'a']#从此处可以看出,拆分时只会拆分第一级元素
print(lis)
['test', 1, 'a', 'aaa', 'a', 'b', 'c', 'a', 'bc', 'hello']
#查 列表的查询除了可以用索引和切片的方式外还可以用for循环的方式
lis = [1, '插入', 'a', (1, 2, 3), 'hello', 'aaa', 'a', 'b', 'c', 'a', 'bc', 'hello']
for i in lis:
    print(i,end=' ')
1 插入 a (1, 2, 3) hello aaa a b c a bc hello 

列表的其他方法:

lis = [1, '插入', 'a', (1, 2, 3), 'hello', 'aaa', 'a', 'b', 'c', 'a', 'bc', 'hello']
print('输出结果如下:')
print('count方法结果:',lis.count('a'))#统计指定元素在列表中出现的次数
print('index方法结果:',lis.index('hello'))#返回列表中第一次出现给定值的索引位置没有则会报错
lis.reverse()#将列表中的元素反转
print('reverse方法结果:',lis)
#lis.sort() #sort对列表中的元素进行排序,但如果元素之间无法比较则会报错
输出结果如下:
count方法结果: 3
index方法结果: 4
reverse方法结果: ['hello', 'bc', 'a', 'c', 'b', 'a', 'aaa', 'hello', (1, 2, 3), 'a', '插入', 1]

猜你喜欢

转载自blog.csdn.net/Grim777/article/details/81480628