搜索
写经验 领红包
 > 旅游

pytho序列类型不包括(pytho序列结构总结)

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

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

分片语法 Slicing Syntax 例子

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

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

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

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

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

高级用法

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

元组分片和列表一样

使用Python对象slice

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

列表倒序

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

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

字符串的分片

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

本文内容由小媛整理编辑!