字符串是在python中十分常见且十分十分常用的一种类型。如果使用到字符串,就会接触到‘索引’这个概念。首先对于字符串,索引的定义:索引是一种方法。(是一种可以提取字符串中的字符的方法)(或者说是一种提取列表中元素的方法)
首先定义一个变量word,使word = 一个字符串(例:‘Python’)
这时,如果我们如果想提取这个字符串当中的第一个字符,应输入 word[0] (计算机当中的第一位都是默认从0开始的)
如果想提取这个字符串当中的第4个字符,应输入word[3] 代表提取第4个字符,因为是从0位开始计数的。如下所示:
若为列表的形式,和上面字符串的形式异曲同工
到这里,简单使用索引方法提取字符或者元素,我们就已经可以搞定了!下面,继续介绍‘切分’
切分是依附于索引的一种方法,如果我并不是想提取其中一个字符呢?我只想提取前两个字符,或者是后两个字符,更亦或者是我想提取1、3、5位的字符。这个时候,就用到了切分这个方法。
切分这种方法,主要的标识就是冒号(:)到底长成什么样子呢?来举个例子看一下:
还是以上面的word为例。我想提取前两个字符
看到这里,大家有没有发现什么问题?我想提取前2个字符,从0位开始,0,1,2.到2这里的话,应该是三位了,所以,切分这个方法,就是一个左开右闭的方法,也就是说,最终结果的展示并不会包括右边最外侧的这一位,而总的位数,则是右边减左边的差。
继续举例,我想提取后两个字符
那么也就是说,如果你想从后往前提取的话,最后一位是负数,然后依次往前(-1,-2,-3,-4...)
如果想要取1、3、5位上的字符呢?
细心的同学这时会发现,这里为什么中间是两个冒号?
秘密在这里:
也就是说,我想取第三位以后的所有字符,就是 word[2:],我想取第六位前面所有的字符,就是word[:5],我想取所有的字符,就是 word[:] 。所以,大家看出来了吗?冒号前面是空的,就默认前面全部都取,冒号后面是空的,就默认后面都取。
再回到上一个问题,取1、3、5位的字符。我们可以发现 0后面是冒号,冒号后面没有值,说明0后面全部都取,又加了一个冒号,而此冒号后面跟的叫做‘步长’,我们设置的步长为2
这里的格式为 word [start:stop:step] 开始 结束 步长
以上,就是最基本的 索引 和 切分 的方法在字符串和列表中使用的详情。