Python序列 Lists/Tuples/Arrays 的分片(slicing)语法

你想获取到他们的子集,不需要写循环语句,直接用分片语法就可以获取。如果我们想获取到2,3,4三个元素,只需要使用语法a[1:4]。

Python序列 Lists/Tuples/Arrays 的分片(slicing)语法

当有一个列表(lists)或者元组(tuples)或者一个数组(字符串就是一个字符的数组),你想获取到他们的子集,不需要写循环语句,直接用分片语法就可以获取。语法是 start:stop:step,请看下面的例子。

分片语法 Slicing Syntax 例子


Python序列 Lists/Tuples/Arrays 的分片(slicing)语法

以上我们定义了一个列表 a,如果我们想获取到2,3,4三个元素,只需要使用语法 a[1:4],其中1代表第二个位置的元素即:2,记住,索引是从0开始的。4代表第5个元素,但是返回的列表不包含第5个元素。

a[:3] 只提供了stop值,意思是只获取列表前三个的值。

a[3:] 只提供了start值,意思是获取第三个往后的所有值。

a[:] 只有一个冒号,意思是复制列表。

Python看到中间的冒号就会知道使用的是分片的语法。

高级用法


Python序列 Lists/Tuples/Arrays 的分片(slicing)语法

出现了两个冒号,最后一个2代表的意思是步进值,从1开始,每次增加2,下一个索引取值就是3,因为最大值是4,停止。所以结果为索引1、3的值的列表 [2,4]

元组分片和列表一样


Python序列 Lists/Tuples/Arrays 的分片(slicing)语法

使用Python对象slice


Python序列 Lists/Tuples/Arrays 的分片(slicing)语法

slice 传入的参数和用冒号的语法的参数是一样的。slice(start, stop, step),记住stop索引处的字符是不包括在结果列表中的。

列表倒序


Python序列 Lists/Tuples/Arrays 的分片(slicing)语法

有一个特殊的用法 list[::-1] 可以使列表倒序排序。

注意,分片后返回的是一个新的对象,修改后不会影响之前的数据。

字符串的分片


Python序列 Lists/Tuples/Arrays 的分片(slicing)语法

[:] 的意思是获取所有的元素,相当于复制了一份数据。

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/82425.html

(0)
上一篇 2024-09-11 05:20
下一篇 2024-09-11 05:28

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

关注微信