Python 切片 [-1:],[:-1] 和 [::-1] 之理解适用

导读:本篇文章讲解 Python 切片 [-1:],[:-1] 和 [::-1] 之理解适用,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

        作为初学者,我们经常会遇到有关序列 [-1:],[:-1],[::-1] 等切片操作,往往傻傻搞不清,甚至懵圈,如何正确理解并自如使用呢?

        首先复习一下序列的有关属性。

        序列是 Python 最基本的数据结构,衍生字符串、列表、元组等数据类型,其中的每个元素都有对应的位置值,具有正向递增( 0 开始),反向递减( -1 开始)之属性,据此可以进行切片索引等操作:

Python 切片 [-1:],[:-1] 和 [::-1] 之理解适用

操作符 描述
s[i] 索引,返回序列 s 中的第 i 个元素,i 为序号
s[i:j]

切片,返回序列 s 中从序号 i 到 j(不包括j)的元素子序列

         i 缺省时,默认为 0

         j 缺省时,默认为 len(s)

         i、j 均缺省时,默认为全部

s[i:j:k]

切片,返回序列 s 中从序号 i 到 j(不包括j),以 k 为步长的元素子序列

        k > 0,步长自左而右(正序);缺省时,默认为 1

        k < 0,步长自右而左(倒序);i 缺省时,默认为 -1;j 缺省时,默认为 -len(s)-1

示例:

>>> s = ('Life', 'is', 'short', 'you', 'need', 'Python')

>>> print(s[1])
is

>>> print(s[:])
('Life', 'is', 'short', 'you', 'need', 'Python')

>>>print(s[-1:])
Python

>>> print(s[:-1])
('Life', 'is', 'short', 'you', 'need')

>>> print(s[::-1])
('Python', 'need', 'you', 'short', 'is', 'Life')

>>> print(s[::-2])
('Python', 'you', 'is')

>>> print(s[2::-1])
('short', 'is', 'Life')

释义:

        s[1] 表示序列 s 的第 1 个元素

        s[:] 表示序列 s 的全部元素       

        s[-1:] 相当于 s[-1:6] 表示序列 s 的第 -1 个元素,也即最后一个元素

        s[:-1] 相当于 s[0:-1],表示序列 s 自始至最后一个元素前的所有元素

        s[::-1] 相当于 s[-1:-7:-1],表示序列 s 自尾而首的所有元素,即倒序

        s[::-2] 表示倒序,步长为2

        s[2::-1] 表示自第 2 个元素始倒序


关于序列的更多知识总结,请参见:

Python 序列之三言两语序列是具有先后关系的一组元素…Python 切片 [-1:],[:-1] 和 [::-1] 之理解适用https://blog.csdn.net/iprobobo/article/details/122542937

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/106924.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!