索引与切片

作者: 卜了了 | 来源:发表于2017-08-25 18:45 被阅读9次

涉及到“索引与切片”的有字符串和列表两种。参考课程连接:http://www.itdiffer.com/course/37/learn#lesson/261和http://www.itdiffer.com/course/37/learn#lesson/269

首先来熟悉下字符串:

字符串,以“python"举例,它是字符 p h t h o n 组成的,并且按照这个顺序,如果某个字符换了或者顺序换了,都会变成新的字符串。

在Python中,把像字符串这样的对象类型(包括后面提到的列表)统称为序列。(即有序排列。)字符串里的每个字符,都有编号,这个编号叫做索引。索引从0开始。指左侧第一个字符。注意,空格也是一个字符。

这样,可以用编号查看一个位置的字符,也可以通过里面的一个字符查看其编号如:

下面还有一种情况,不是查看里面的一个字符,而是几个字符,这就相当于切出来一块,当然这个切对原字符串没有影响。

a='study python'

切片显示规则如下:a[m:n]

如果冒号前不写数字(相当于写0),表示从字符串第一个开始,包含第一个。如果写m(m>0),表示从从第m+1个字符开始包含第m+1个字符

冒号后如果不写数字,表示到字符串的最后一个字符,包含最后一个字符。如果写数字,表示到第n个字符结束(即不包含编号为n+1的字符)

a='study python'

当然编号也可以有负数。-1表示最后一个字符,-2,表示末二个字符,以此类推,切片的话依然是前面包含,后面不包含。如果正负数混用的话,也不是不可以。

a='study python'

lang = 'python'

lang[-1:-3] 实质是lang[(6-1):(6-3)]=lang[5:3]

序列都是从左向右读取,此处是从右向左读,所以返回是一个空。



下面讲列表:列表的索引/切片与字符串类似

序列切片与字符的不同,可以多一个冒号和数字,表示步长--sql[start:end:step]

start 是开始,end是结束的索引,如果空就到末尾

step是步长如果为空,step默认为1.


相关文章

网友评论

    本文标题:索引与切片

    本文链接:https://www.haomeiwen.com/subject/yofpdxtx.html