序列是指:内容连续、有序,可以使用下标索引的一类数据容器
列表、元组、字符串、均可以视为序列
序列的常用操作--切片
序列支持切片,即:列表 元组、字符串均支持进行切片操作
切片: 从一个序列中,取出一个子序列
语法:序列[起始下标:结束下标:步长]
表示从序列中,从指定位置开始 ,依次取出元素到指定位置结束 得到一个新序列
起始下标表示从何处开始 可以为空 留空表示从头开始
结束下标(不含)表示何处结束 可以留空 留空视作截取到结尾
步长表示 依次取元素的间隔
步长1 表示一个个取元素
步长2 表示 每次跳过一个元素取
步长N表示 每次跳过N-1个元素取
步长为负数表示 反向取 注意 起始下标和结束下标也要反向标记
"""
演示对序列进行切片操作
"""
# 对list 进行切片 从1 开始 4结束 步长为1
my_list = [0, 1, 2, 3, 4, 5, 6]
result1 = my_list[1:4] # 步长默认是1 ,所以可以省略不屑
print(f"结果1:{result1}")
# 对tuple 进行切片从头开始 到最后结束 步长为1
my_tuple = (0, 1, 2, 3, 4, 5, 6)
result2 = my_tuple[:] # 起始和结束不写表示从头到尾,步长为1 可以省略
print(f"结果2:{result2}")
# 对str进行切片 从头开始 到最后结束 步长为2
my_str = "01234567"
result3 = my_str[::2]
print(f"结果3:{result3}")
# 对str进行切片 从头开始到最后结束 步长 -1
my_str = "01234567"
result4 = my_str[::-1] # 等同于将序列反转
print(f"结果4:{result4}")
# 对列表进行切片 从 3 开始 到1 结束 步长 -1
my_list = [0, 1, 2, 3, 4, 5, 6]
result5 = my_list[3:1:-1]
print(f"结果5:{result5}")
# 对元组进行切片 从头开始 到尾结束 步长-2
result6 = my_tuple[::-2]
print(f"结果6:{result6}")