目录
1、序列
序列是指:内容连续、有序,可使用下标索引的一类数据容器。
列表,元组,字符串,均可以视为序列。
2、序列的常用操作--切片
序列支持切片,即:列表、元组、字符串、均支持切片操作。
切片:从一个序列中,取出一个字序列。
2.1 基本语法
序列[起始下标:结束下标:步长]
表示从序列中,从指定位置开始,依次取出元素,到指定位置结束,得到一个新序列。
起始下标:表示从何处开始,可以留空,留空作为从头开始。
结束下标(不含):表示何处结束,可以留空,留空作为截取结尾。
步长表示:依次取元素的间隔。
- 步长1表示:一个个取元素。
- 步长2表示:每次跳一个取元素。
- 步长为负数表示:反向取。
2.2 例子
# 对list进行切片,从1开始,4结束,步长为1
my_list = [0,1,2,3,4,5,6]
result1 = my_list[1:4]
print(f"结果1:{result1}")
结果1:[1, 2, 3]
#对tuple进行切片,从头开始,到结束,步长为1
my_tuple = (0,1,2,3,4,5,6)
result2 = my_tuple[::]
print(f"结果2:{result2}")
结果2:(0, 1, 2, 3, 4, 5, 6)
#对str进行切片,从头开始,到结束,步长为2
my_str = "0123456"
result3 = my_str[::2]
print(f"结果3:{result3}")
结果3:0246
#对str进行切片,从头开始,到结束,步长为-1
my_str = "0123456"
result4 = my_str[::-1] #等同将序列反转
print(f"结果4:{result4}")
结果4:6543210
# 对列表进行切片,从3开始,1结束,步长为-1
my_list = [0,1,2,3,4,5,6]
result5 = my_list[3:1:-1]
print(f"结果5:{result5}")
结果5:[3, 2]
# 对元组进行切片,从头开始,到结束,步长为-2
my_tuple = (0,1,2,3,4,5,6)
result6 = my_tuple[::-2]
print(f"结果6:{result6}")
结果6:(6, 4, 2, 0)
3、序列的切片实践
有字符串:”万过薪月,客博来,nohtyp学“,请使用任何方式,得到”博客“。
my_str = "万过薪月,客博来,nohtyp学"
print(my_str[::-1][9:11])
print(my_str[5:7][::-1])
print(my_str.split(",")[1].replace("来","")[::-1])