python数据容器的切片操作(7)

序列

序列:内容连续、有序,可使用下标索引的一类数据容器,列表,元组,字符串均可以视为序列

序列常用操作:切片(从一个序列中,取出一个子序列)

语法:序列[起始下标:结束下标:步长]
表示从序列中,从指定位置开始,依次取出元素,到指定位置结束,得到一个新序列:

  • 起始下标表示从何处开始,可以留空,留空视作从头开始
  • 结束下标(不含)表示何处结束,可以留空,留空视作截取到结尾
  • 步长表示,依次取元素的间隔
    · 步长1表示,一个个取元素
    · 步长2表示,每次跳过1个元素取·步长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}")     # [1, 2, 3]

对tuple进行切片

从头开始,到最后结束,步长1

my_tuple = [0, 1, 2, 3, 4, 5, 6]
result2 = my_tuple[:]   # 起始和结束不写表示从头到尾,步长为1可以省略
print(f"结果2:{result2}")     # [0, 1, 2, 3, 4, 5, 6]

对str进行切片

  • 从头开始,到最后结束,步长2
my_str = "01234567"
result3 = my_str[::2]
print(f"结果3:{result3}")  # 0246
  • 从头开始,到最后结束。步长-1
my_str = "01234567"
result4 = my_str[::-1]
print(f"结果4:{result4}")  # 7654321

对列表进行切片

从3开始,到1结束,步长-1

my_list = [0, 1, 2, 3, 4, 5, 6]
result5 = my_list[3:1:-1]
print(f"结果5:{result5}")  # 32

对元组进行切片

从头开始,到尾结束,步长-2

my_tuple = [0, 1, 2, 3, 4, 5, 6]
result6 = my_tuple[::-2]
print(f"结果6:{result6}")  # 6420

案例

从下面字符串中输出“斜体”

my_str = "粗加,体斜,线除删"
# 1.倒序字符串,切片取出
result1 = my_str[::-1][4:6]
print(f"方式1结果:{result1}")

# 2.切片取出,然后倒序
result2 = my_str[3:5][::-1]
print(f"方式2结果:{result2}")

# 3.split分隔",",倒序字符串
result3 = my_str.split(",")[1][::-1]  # 取分隔后1位置的词
print(f"方式3结果:{result3}")
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值