繁体   English   中英

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

[英]How do you find the index of specific characters on python with multiple instances?

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

例子:

print(find_instance_character(everyone, e, v))

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

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

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

我会使用 find 来获取 a 中第一个 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]])

必需 搜索的字符串。

开始可选 搜索开始位置。

结束可选 搜索结束位置。

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM