Python字符串子字符串

时间:2020-02-23 14:43:30  来源:igfitidea点击:

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

Python字符串子字符串

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

创建一个子串

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

s = 'My Name is hyman'

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

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

输出:

hyman
['My', 'Name', 'is', 'hyman']

检查是否找到子字符串

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

s = 'My Name is hyman'

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

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

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

子字符串出现次数

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

s = 'My Name is hyman'

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

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

输出:

Substring count = 3
Substring count = 3

查找子字符串的所有索引

没有内置函数来获取子字符串的所有索引的列表。
但是,我们可以使用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'))