如何在多个实例的python上找到特定字符的索引?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在多个实例的python上找到特定字符的索引?相关的知识,希望对你有一定的参考价值。

我应该编写一个具有三个参数的函数,然后它基本上必须在第一个参数中找到第三个参数的实例,然后它应该在第三个参数之后返回第二个参数的第一个实例。

例:

print(find_instance_character(everyone, e, v))

它应该返回索引2,因为第一个e出现在我们的第三个参数为1之前,所以函数必须在第三个参数之后找到第二个参数的实例。

我在想我会在这里使用切片或范围,但我不知道用户输入的第一个参数的长度。

答案

首先,您需要输入字符串print(find_instance_character('everyone', 'e', 'v'))

我会用find来获取第一个c的位置。然后拼接字符串并再次使用find来获取第一个b相对于第一个c出现的位置。添加这些给出了a中第一个c之后的第一个b的绝对位置。

def find_instance_character(a,b,c):
    loc = a.find(c)
    return loc + a[loc:].find(b)

此外,如果找不到某个字符,这个添加会搞乱,因为find会返回-1。要解决此问题,您必须使用if条件来检查两个find()调用是否返回-1。

另一答案

尝试find(),它返回字符串中指定的第一个字符索引。

str.find(sub[, start[, end]])

sub:必需。搜索的字符串。

开始:可选。搜索开始位置。

结束:可选。搜索结束位置。

def find_instance_character(s, a, b):
    return s.find(a, s.find(b))
print(find_instance_character("everyone", "e", "v"))
# 2

以上是关于如何在多个实例的python上找到特定字符的索引?的主要内容,如果未能解决你的问题,请参考以下文章

Scintilla:如何在给定特定字符位置的情况下找到字节位置

如何匹配并返回字符串的多个实例,其中单个撇号可以包含在任何索引中?

如何从python列表中任何特定索引处的句子中提取特定字符串?

如何在 Python 函数结果中表示“未找到索引”

MS Access 如何将焦点集中在特定的多个报表实例上

如何在字符串(Javascript)中出现字符时如何找到索引?