今天学习了列表的切片及排序的有关方法,在此整理一下。
切片
list = [1,2,3,4,5,6,7,8,9,10]
print(list[1:]) # :左侧为切片的开始位置,右侧为切片的结束位置
print(list[:8]) # 切片的最后一位为冒号右侧数字的前一位,并不包含那位
print(list[3:5])
print(list[-2:-1]) #-1为列表最后一位元素,但是要保持冒号右侧的序列在左侧之后,否则将提取不到元素
步长
list = [1,2,3,4,5,6,7,8,9,10]
print(list[1:6:2]) #从第1位开始,到第5位结束,以步长为2提取元素
print(list[::2]) #前两位可以省略,默认选取整个列表,以步长为2提取元素
print(list[-1::-2]) #步长定义为负数则为向左移动
其余操作:
1. in\not in:判断是否包含某个元素
group = ['唐僧','悟空','八戒','沙僧','白龙马','白骨精']
if '白骨精' in group:
print('猴哥快来!')
if '悟空' not in group:
print('师傅快跑!')
else:
print('老孙来也,妖怪哪里跑!')
2. sort:排序
num_list = [6, 2, 8, 13, 97]
#num_list = ['a','b','abc','aBC','ABC','ABCD','abc123'] #按ACSII码排列
num_list.sort() #默认为按照升序来排序
print(num_list)
num_list.sort(reverse = True) # reverse = True 降序排列
print(num_list)
3. reverse: 倒序排列
num_list = [1,2,8,1,5,1,13,97]
num_list.reverse() #倒序排列
print(num_list)
4. count:统计某个参数在列表中出现了多少次
num_list = [1,2,8,1,5,1,13,97]
print(num_list.count(1))