CodeGym /课程 /Python SELF ZH /获取子字符串

获取子字符串

Python SELF ZH
第 10 级 , 课程 3
可用

11.1 索引的设置

在Python中,提取子字符串是一个常用的操作,可以用来操作文本数据并从字符串中提取有用的信息。这里介绍几种获取子字符串的方法,每种方法都有自己的特点和应用场景。

使用切片

切片 (slices)是Python中获得子字符串的基本方法。Python中的切片通过语法 string[start:stop:step]创建,其中:

  • start — 起始索引(包括在内),
  • stop — 终止索引(不包括在内),
  • step — 提取字符的步长。

切片语法允许你指定想要提取的子字符串的起始和终止索引。


text = "Hello, world!"
substring = text[7:12]  # 输出 'world'
        

11.2 部分索引的设置

提取子字符串时不一定要指定所有三个索引。

  • 如果 start 省略,切片从字符串的开头开始。
  • 如果 stop 省略,切片到字符串的结尾。
  • 如果 step 省略,字符一个一个提取。

例子:

我们写个例子,从第7个字符开始提取到字符串末尾


text = "Hello, world!"
substring = text[7:]  # 输出 'world!' 

现在从字符串开始提取到第10个字符。希望你记得,范围的最后一个字符不包括在子字符串结果中。


text = "Hello, world!"
substring = text[:10]  # 输出 'Hello, wor'
        

11.3 负数索引

Python中的负数索引允许从字符串结尾开始访问元素。使用负数索引往往让代码更容易阅读和使用,尤其是在需要操作字符串结尾时。

获取字符串的最后一个字符:


text = "Python"
last_char = text[-1]
print(last_char)  # 输出: 'n'
    

获取字符串的倒数第二个字符:


text = "Python"
second_last_char = text[-2]
print(second_last_char)  # 输出: 'o'

获取字符串倒数三个字符:


text = "Python"
last_three = text[-3:]
print(last_three)  # 输出: 'hon'

获取除去最后一个字符的字符串:


text = "Python"
all_but_last = text[:-1]
print(all_but_last)  # 输出: 'Pytho'

切片的高级用法

通过参数step可以创建更复杂的切片,比如说字符反序提取:


# 反转字符串
print(text[::-1])  # '!dlrow ,olleH'
        
评论
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION