python基础--切片

切片

l 格式:[start : end : step]
l Start:起始索引,从0开始,-1表示结束
l End:结束索引
l Step:步长
l end-start=正数时,从左向右取值,=负数时反向取值
l 注意:切片结果不包含结束索引,即不包含最后一位,-1代表最后一个位置索引

>>> s=list(range(11))#生成一个列表
>>> s
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

>>> a[1:3]#1.切片用冒号,2.右边为开区间,只能取到1,2
[1, 2]
>>> s[0:5]#步长不写默认为1
[0, 1, 2, 3, 4]
>>> s[2:]#end值不写默认为取到最后一位
[2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> s[2:9:2] #步长为2 [2, 4, 6, 8] 倒取 >>> s[-1:-8:-2] [10, 8, 6, 4] 字符串切片 例:取出roadoo >>> s="gloryroad is good!" >>> s[5:10] 'road ' >>> s[-3:-5:-1] 'oo' >>> result=s[5:10]+s[-3:-5:-1] #字符串拼接用+ >>> result 'road oo' >>> s[5:20] #切片越界也不报错 'road is good!'

Python中符合序列的有序序列都支持切片(slice)
如:列表,字符,元祖(字典除外),示例:

>>> s={'a':1,'b':2,'c':3}
>>> s[1:3]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: unhashable type: 'slice'

猜你喜欢

转载自www.cnblogs.com/wenm1128/p/11557993.html