序列
序列是指:内容连续,有序可使用下标索引的一类数据容器
列表,元组,字符串,均可以视为序列
序列的常用操作——切片
序列支持切片,即:列表,元组,字符串均支持进行切片操作
切片:从一个序列中取出一个子序列
语法:序列[起始下标:结束下标:步长]
表示从序列中从指定位置开始依次取出元素,到指定位置结束,得到一个新序列
起始下标表示从何处开始,可以留空,留空视作从头开始
结束下标(取到的元素到结束下标的前一个)表示何处结束,可以留空,留空视作截取到结尾
步长表示依次取元素的间隔(步长为1表示一个个取,步长为2表示每次跳过一个元素取,步长N表示每次跳过N-1个元素取。步长为负数表示反向取(倒序))
#对list进行切片,从1开始4结束步长为1
my_list=[0,1,2,3,4,5]
result=my_list[1:4:1]
print(result)#结果是[1,2,3]
#对tuple进行切片,从头开始到最后结束,步长1
my_tuple=(0,1,2,3,4,5)
result=my_tuple[::1]
print(result)#结果为(0,1,2,3,4,5)
#对str进行切片,从头开始到最后结束步长为2
my_str="012345"
result=my_str[::2]
print(result)#结果是024
切片练习
str="万过薪月,员序程马黑来,nohtyp学"
#方法一:先全部翻转再进行切片
r=str[::-1][9:14:1]
print(r)
#方法二:先取出所需内容再翻转
r=str[5:10:1][::-1]
print(r)
#方法三:对其进行split分割然后用下标索引取出相应元素并且将不需要的替换掉,再倒序
p1=str.split(",")#分隔后字符串变为列表
print(p1)#结果是:['万过薪月', '员序程马黑来', 'nohtyp学']注意:分隔中的逗号要与上面字符串中的逗号一致
p2=p1[1]#显示p1列表中的1号元素
print(p2)#结果是:员序程马黑来
p3=p2.replace("来","")#将不需要的部分替换为空
print(p3)#结果是:员序程马黑
p4=p3[::-1]#倒序
print(p4)#结果为:黑马程序员
#方法三也可以写作一行:p1=str.split(",")[1].replace("来“,”“)[::-1]