子字符串是字符串的一部分。 Python string 提供了各种方法来创建子字符串,检查它是否包含子字符串,子字符串的索引等。在本教程中,我们将研究与子字符串相关的各种操作。

Python 字符串子字符串

让我们首先看一下创建子字符串的两种不同方法。

创建子串

我们可以使用字符串切片创建一个子字符串。我们可以使用split()函数来创建基于指定分隔符的子字符串列表。

s = 'My Name is Pankaj'

# create substring using slice
name = s[11:]
print(name)

# list of substrings using split
l1 = s.split()
print(l1)

输出:

Pankaj
['My', 'Name', 'is', 'Pankaj']

python 字符串使用切片和拆分创建子字符串

检查是否找到子字符串

我们可以使用 in 运算符或find() 函数来检查字符串中是否存在子字符串。

s = 'My Name is Pankaj'

if 'Name' in s:
    print('Substring found')

if s.find('Name') != -1:
    print('Substring found')

注意 find() 函数如果找到则返回子字符串的索引位置,否则返回 -1。 python 字符串包含子字符串

子串出现次数

我们可以使用count() 函数来查找字符串中子字符串的出现次数。

s = 'My Name is Pankaj'

print('Substring count =', s.count('a'))

s = 'This Is The Best Theorem'
print('Substring count =', s.count('Th'))

输出:

Substring count = 3
Substring count = 3

python 字符串子串计数

查找子串的所有索引

没有内置函数可以获取子字符串的所有索引列表。但是,我们可以使用 find() 函数轻松定义一个。

def find_all_indexes(input_str, substring):
    l2 = []
    length = len(input_str)
    index = 0
    while index < length:
        i = input_str.find(substring, index)
        if i == -1:
            return l2
        l2.append(i)
        index = i + 1
    return l2


s = 'This Is The Best Theorem'
print(find_all_indexes(s, 'Th'))

输出: zwz100029 0, 8, 17]python 字符串列表的子字符串索引位置

您可以从我们的GitHub 存储库签出完整的 Python 脚本和更多 Python 示例。

点击阅读全文
Logo

学AI,认准AI Studio!GPU算力,限时免费领,邀请好友解锁更多惊喜福利 >>>

更多推荐