列表
查
索引(下标),默认从0开始
切片
.count 查某个元素的出现次数
.index 根据内容找元素的对应索引位置
增加
.append() 追加在最后
.insert(index,'内容') 根据索引位置添加
.extend() 扩展一个列表 a.extemd(b) 会改变a的值,即a变成 a和b的合并,但是b不变
"+" a + b 也可以把两个队列合并在一起,倘若想知道a+b但是不想a,b改变。可以用c = a + b得到值而不改变a和b
修改
a[index] = '新的值' 单一赋值
a[start:end] = [a,b,c...] 多个赋值
删除
remove('内容')
pop("index") 删除指定位置的内容,且可以赋值
del a , del a[index] 删除一个列表或者根据位置删除内容
.clear() 清空列表
排序
.sort() 用被排序的变量作为队形执行排序的函数,按照从小向大排序,字母按照从a到z的顺序,用大写先大后小
sorted() 将被排序的变量作为函数的执行参数,进行排序
severse() 反序排列
身份判断
type(a) is list 根据返回值判断正确与否
列表的切片
1 a=['wuchao','jinxin','xiaohu','sanpang','ligang'] 2 #索引表示为a[0,1,2,3,4] 即wuchao这个值表示在a[]里面的0索引位置,以此类推 3 # 查 切片 4 print(a[1:3]) 5 # 顾头不顾尾,包括左边不包括右边 6 7 print(a[1:]) 8 # 取到最后一个值 9 10 print(a[1:-1]) 11 # 取到最后一个值,但是不包括最后一个 12 13 print(a[1:-1:1]) 14 # 从左到右一个一个取出来,最后的“1”表示步长 15 16 print(a[1:-1:2]) 17 # 从左到右隔一个取,“2”表示从左往右两个为间隔的取,即隔一个取 18 19 print(a[3::-2]) 20 # 从右往左走,如果是反方向那第一个就要是最后一个,然后从最后往前取,-2表示从右往左隔一个取
添加 append insert
1 a=['wuchao','jinxin','xiaohu','sanpang','ligang'] 2 3 a.append('xuepeng') 4 print(a) 5 # 添加一个元素进入a队列中的最后添加,默认添加在最后一个位置 6 7 a.insert(1,'xuepeng') 8 print(a) 9 # #在索引1的位置插入,insert可以将数据插入到任意位置
修改
1 # 修改 不涉及方法,只需要进行赋值操作 2 a[1] = 'haidilao' 3 print(a) 4 # 知道索引位置的话,就可以直接拿出来进行赋值操作替换原数据 5 6 a[1:3] = ['a','b'] 7 print(a) 8 # 对多位置进行修改,即多取值然后赋值替换
删除 remove pop del
1 a.remove('wuchao') 2 print(a) 3 # remove直接跟的是删除内容而不是下标,若想根据索引删除需要借助其他命令 4 # 当然可以 a.remove(a[0]) 这样删除a的索引的第0索引位置的内容,但是比较麻烦 5 # remove的删除只能是个整体,不能对多个内容进行切片删除 6 7 b=a.pop(1) 8 print(a) 9 print(b) 10 # pop可以多做一个操作,即:将取出的内容保存,还可以在对其他的对象赋值 11 # 若果pop不进行赋值的话,和remove用法类似,只是多了个赋值而已 12 # 默认删除最后一个如果不指定位置的话 13 14 del a[0] 15 print(a) 16 # del 的删除与列表关系不大,并不是专属列表的操作,可以删除一切, 17 # 不仅仅是a内的元素甚至是a本身都可以删除
其他操作
1 # count 出现频率 2 t = ['to','to','to','or'].count('to') 3 print(t) 4 # #对列表内的指定元素进行次数计算
1 #extend 添加数组 2 a = [1,2,3] 3 b = [4,5,6] 4 a.extend(b) 5 print(a) 6 print(b) 7 # #对多个数组进行叠加,只改变被添加的数组,添加的数组无改变
1 # index 根据元素内容查找在列表中的索引位置 2 a=['wuchao','jinxin','ligang','xiaohu ','sanpang','ligang','ligang'] 3 print(a.index('wuchao')) 4 # 在知道元素内容的时候,想要得到此内容的地址索引 5 # 如果列表总有相同的元素,即想取的元素多个重复,index只能取第一个的位置 6 # 如果想要取多个,可以一个一个取,index不支持此操作,因此需要切片
1 # sort 按照从小到大排序,如果是字符串的话就是按照26字母顺序排序,如果有大小写,先大后小 2 b = [3,5,4,9,8,2,1] 3 b.sort() 4 print(b) 5 #没有返回值,是不能进行赋值操作的,如果是a = b.sort() 返回的是 none
1 # 查找某个元素在不在列表时,可以 .count 查询次数,为0表示不在,或者直接 in 根据返回值查看 2 a=['wuchao','jinxin','ligang','xiaohu ','sanpang','ligang','ligang'] 3 print(a.count('ssssss')) 4 5 print('sssss' in a )
查找队列中第几个的相同元素的示例方法
有点麻烦仅提供思路来看
1 # 详细的取第二个李刚的位置索引,相当的麻烦,如果要取第三第四,就用循环吧 2 # 这种情况很少。也有其他的方法,比如找出一个删掉再找一个一个再删掉之类的。。 3 first_lg_index = a.index('ligang') #首先取出来第一个李刚的位置 4 little_a = a[first_lg_index + 1:] #基于第一个李刚的位置进行切片。而且不包括第一个李刚,即‘+1’位置后的元素进行切片创建一个小列表 5 print('first_lg_index:',first_lg_index) #打印出第一个李刚的索引位置用作后续计算。 6 second_lg_index = little_a.index('ligang') #将第二个李刚的位置找出来并赋值给一个变量 7 print('second_lg_index',second_lg_index) #打印出第二个李刚的索引位置用作后续计算 8 second_lg_in_big_index = first_lg_index + second_lg_index + 1 #第一个李刚的位置加第二个李刚的位置,因为前面切片时省略了第一个李刚的位置,因此需要‘+1’补充回来 9 print('second_lg_in_big_index:',second_lg_in_big_index) #打印出来计算结果 10 print('second lg:',a[second_lg_in_big_index]) #打印出查询词