切片
切片是指对操作对象截取其中一部分的操作。字符串,列表,元组都支持切片操作
语法:
序列[开始位置下标:结束位置下标:步长]
注意:
不包含结束位置下标对应的数据,正负数均可
步长2选取间隔,正负数均可,默认步长为1
str="ilovepython"
print(str[1:5:1])#love
print(str[1:5])#love,1是开始位置下标,5是结束下标,步长为默认1没写
print(str[:5])#ilove,开始没写默认从0开始,(注意至少要有一个冒号:)
print(str[1::])#lovepython和下面一样
print(str[1:])# lovepython 结束的位置没有写默认为最后
print(str[:])#ilovepython,都没写的话默认全部,步长为1
负数测试:
print(str[::-1])#nohtypevoli,反向取值,-1代表反向步长为1
print(str[-4::-1])#typevoli -1位是n,-4位是t,所以从t反向截取
print(str[-4:-8:-1])#type -8位是v,但是不截取结束下标所以截取的是-4到-7的字符串
print(str[:-4:-1])#noh
特殊
print(str[-4:-1:-1])#会出错,方向冲突,
辨别方法 用结束下标减开始下标,符号与步长一样则对,相反则冲突