切片学习转载文档-易懂好学

切片操作符是序列名后跟一个方括号,方括号中有3个可选的数字,并用冒号分割,数是可选的,而冒号是必须的。

切片操作符中的第一个数表示切片开始的位置,第二个数表示切片到哪里结束,第三个数表示切片步长。

如果不指定第一个数,Python就从序列首开始。如果没有指定第二个数,则Python会停止在序列尾。如果没有指定第三个数,则步长默认为1。

注意,返回的序列从开始位置开始 ,刚好在 结束 位置之前结束。即开始位置是包含在序列切片中的,而结束位置被排斥在切片外,构成了一个前闭后开区间 [ )

例如:

1》正向切片(步长是正整数)

>>> s='love python!'

>>> s[2:9:2]  #切片区间 [2,9),步长是2

'v yh'

>>> s[:5] #切片区间 [0,5),步长默认是1

'love '

>>> s[4:] #切片区间 [4,len(s)),步长默认是1

' python!'

>>> s[:] #切片区间 [0,len(s)),步长是1,返回整个序列的拷贝

'love python!'

>>> s[::2]  #切片区间是 [0,len(s)),步长是2

'lv yhn'

Python序列倒数第一个元素的索引是-1,python同样支持负数索引切片。如:

>>> s

'love python!'

>>> s[-5:-2] #切片区间 [-5,-2),步长默认是1

'tho'

>>> s[:-1] #除了最后一个元素,其他的元素全部返回

'love python'

>>> s[-8::2] #切片区间 [-8,-1],步长是2

' yhn'

2》反向切片(步长是负数),如:

>>> s

'love python!'

>>> s[9:2:-1]

'ohtyp e'

>>> s[-1::-1] #返回序列的逆序序列

'!nohtyp evol'

>>> s[::-1] #返回序列的逆序序列

'!nohtyp evol'

另外,切片除了可以作用于字符串,也可以作用于元组和列表。
————————————————
版权声明:本文为CSDN博主「weixin_39752157」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_39752157/article/details/112053270

上一篇:hdu7024 Penguin Love Tour(2021杭电暑假多校5)树形dp


下一篇:Java自学-多线程(1)