迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > Python >

在 Python 中的字符串中查找字符

作者:迹忆客 最近更新:2023/03/24 浏览次数:

字符串是字符的集合。字符串中的每个字符都有一些可用于访问它的特定位置。在本篇文章中,我们将讨论如何在字符串中查找字符的位置。


使用 find() 函数查找字符串中字符的位置

find() 函数返回子字符串的位置。我们还可以指定要搜索的起点和终点位置(默认情况下,起点为 0,终点为字符串的长度)。

在下面的代码中,我们将使用此函数查找字符串中字符的位置。

s = 'python is fun'
c = 'n'
print(s.find(c))

输出:

5

请注意 ,它返回字符串中遇到的字符的第一个位置。关于此函数要记住的另一件事是,当字符串中不存在给定的子字符串时,它将返回-1。


使用 rfind() 函数在字符串中查找字符的位置

该函数类似于 find() 函数,唯一的区别是它返回子字符串的最后位置。

例如,

s = 'python is fun'
c = 'n'
print(s.rfind(c))

输出:

12

使用 index() 函数查找字符串中字符的位置

index() 函数的用法类似于 find() 函数,以返回字符串中字符的位置。像 find() 函数一样,它也返回字符串中字符的第一个匹配项。

例如,

s = 'python is fun'
c = 'n'
print(s.index(c))

输出:

5

index()find() 函数之间的区别在于,当字符串中缺少所需的字符时,index() 函数将返回 ValueError


使用 for 循环查找字符串中字符的位置

在这种方法中,我们可以注意到字符串中字符的每次出现。我们遍历字符串并分别比较每个字符。显示找到匹配项的每个位置,并将其存储在不同的变量中。

以下代码实现了此逻辑。

s = 'python is fun'
c = 'n'
lst = []
for pos,char in enumerate(s):
    if(char == c):
        lst.append(pos)
print(lst)

输出:

[5, 12]

我们使用 enumerate() 函数,因为它使迭代更加容易,并为字符串的每个字符分配了一个计数器变量。

我们还可以使用列表推导方法来实现此方法,该方法被认为更快捷,更简洁。

例如,

s = 'python is fun'
c = 'n'
print([pos for pos, char in enumerate(s) if char == c])

输出:

[5, 12]

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

Pandas read_csv()函数

发布时间:2024/04/24 浏览次数:254 分类:Python

Pandas read_csv()函数将指定的逗号分隔值(csv)文件读取到 DataFrame 中。

Pandas 追加数据到 CSV 中

发布时间:2024/04/24 浏览次数:352 分类:Python

本教程演示了如何在追加模式下使用 to_csv()向现有的 CSV 文件添加数据。

Pandas 多列合并

发布时间:2024/04/24 浏览次数:628 分类:Python

本教程介绍了如何在 Pandas 中使用 DataFrame.merge()方法合并两个 DataFrames。

Pandas loc vs iloc

发布时间:2024/04/24 浏览次数:837 分类:Python

本教程介绍了如何使用 Python 中的 loc 和 iloc 从 Pandas DataFrame 中过滤数据。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便