gpt4 book ai didi

python - 如何在没有重复结果的情况下从python中的字符串获取索引位置

转载 作者:太空宇宙 更新时间:2023-11-04 01:53:46 24 4
gpt4 key购买 nike

string 的 for 循环中,我想获取该特定字母在 string 中的 index 位置,但是如果该单词中有相同的字母,则不起作用。

我遍历了 string 中的字母并得到了字母的 index 位置(通过使用 .find().index() ) 对于由唯一字母组成的 string ,但如果 string 包含相同的字母,则索引将仅是string 中出现的第一个字母。

indexList = [] #list of stored indexes
word = "grocery" #could be any string, just using "grocery" as an example
for letter in word:
index = word.find(letter)
indexList.append(index)

print (indexList)

#Expected output: [0, 1, 2, 3, 4, 5, 6]
#Actual output: [0, 1, 2, 3, 4, 1, 6]

5和1的index位置有相同的字母(“r”),所以.find().index() 方法只添加 1 而不是 5,因为它是 string 中的第一个“r”。我想知道是否有任何方法可以获取指定字母在单词中的位置。请帮忙。谢谢!

最佳答案

Find 接受两个可选参数:start(默认为 0)和 end(默认为字符串结尾 - 适合您的案件)。使用枚举来包含起点:

for i, letter in enumerate(word):
index = word.find(letter, i)
indexList.append(index)

关于python - 如何在没有重复结果的情况下从python中的字符串获取索引位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57368114/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com