python切片(slice)

a[start:end] # 从start开始到end-1结束
a[start:]    # 从start开始直到末尾
a[:end]      # 从头部开始直到end结束
a[:]         # 复制整个列表

这里还有一个step值,可以用在上面素有例子的后面:

a[start:end:step] # 按照step步长直到end-1结束,并不是从start一个个遍历到end

重点需要记住的是::end值代表的是不被选中的第一个位置.所以end和start区别在于选中的元素(如果step默认为1)

另一点要说的是start或者end可能是个负数,也就是从尾部而不是从头部开始计数.所以:

a[-1]    # 列表最后一个元素
a[-2:]   # 列表最后两个元素
a[:-2]   # 除了最后两个元素剩下的部分

如果你调用的元素多于列表中含有的元素个数,Python也会很友好的表示.例如,如果你请求a[:-2]而a只含有一个元素,你得到的是一个空列表而不是一个错误信息.有些时候你可能更希望得到这个错误信息,所以你得意识到上面的事可能发生.

source: https://taizilongxu.gitbooks.io/stackoverflow-about-python/content/29/README.html

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。