Python截取字符串(字符串切片)方法详解

Python截取字符串(字符串切片)方法详解

从本质上讲,字符串是由多个字符构成的,字符之间是有顺序的,这个顺序号就称为索引(index)。Python 允许通过索引来操作字符串中的单个或者多个字符,比如获取指定索引处的字符,返回指定字符的索引值等。

获取单个字符

知道字符串名字以后,在方括号[ ]中使用索引即可访问对应的字符,具体的语法格式为:

strname[index]

strname 表示字符串名字,index 表示索引值。

Python 允许从字符串的两端使用索引:

当以字符串的左端(字符串的开头)为起点时,索引是从 0 开始计数的;字符串的第一个字符的索引为 0,第二个字符的索引为 1,第三个字符串的索引为 2 ……

当以字符串的右端(字符串的末尾)为起点时,索引是从 -1 开始计数的;字符串的倒数第一个字符的索引为 -1,倒数第二个字符的索引为 -2,倒数第三个字符的索引为 -3 ……

请看下面的实例演示:
url = ‘http://www.baidu.com/’
#获取索引为1的字符
print(url[1])
#获取索引为 -2 的字符
print(url[-2])
运行结果:
t
m

获取多个字符(字符串截去/字符串切片)

使用[ ]除了可以获取单个字符外,还可以指定一个范围来获取多个字符,也就是一个子串或者片段,具体格式为:

strname[start : end : step]

对各个部分的说明:

strname:要截取的字符串;

start:表示要截取的第一个字符所在的索引(截取时包含该字符)。如果不指定,默认为 0,也就是从字符串的开头截取;

end:表示要截取的最后一个字符所在的索引(截取时不包含该字符)。如果不指定,默认为字符串的长度;

step:指的是从 start 索引处的字符开始,每 step 个距离获取一个字符,直至 end 索引出的字符。step 默认值为 1,当省略该值时,最后一个冒号也可以省略。

【实例1】基本用法:

url = 'http://www.baidu.com/'
#获取索引从2处到9(不包含9)的子串
print(url[2: 9]) # 输出 zy
#获取索引从10处到-1的子串
print(url[10: -1]) # 输出 zyit.org is very
#获取索引从-21到6的子串
print(url[-20: -1])
#从索引3开始,每隔4个字符取出一个字符,直到索引22为止
print(url[3: 20: 4])

运行结果:

tp://ww
.baidu.com
http://www.baidu.co
pwa.

【实例2】高级用法,start、end、step 三个参数都可以省略:

url = 'http://www.baidu.com/'
#获取从索引2开始,直到末尾的子串
print(url[2: ])
#获取从索引-20开始,直到末尾的子串
print(url[-20: ])
#从开头截取字符串,直到索引20为止
print(url[: 20])
#每隔3个字符取出一个字符
print(url[:: 5])

运行结果:

tp://www.baidu.com/
http://www.baidu.com/
http://www.baidu.com/
h/.u/
    原文作者:睿科知识云
    原文地址: https://blog.csdn.net/ccc369639963/article/details/123656987
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞