给定小写的字符串“ s”,返回字符串中仅出现一次的第一个字符的索引

时间:2019-11-30 19:17:21

标签: python string lowercase

“”“如果每个字符都出现多次,则返回-1。示例输入:s: "Who wants hot watermelon?。输出:8。”“”

def findLastIndex(str, x): 
    index = -1
    for i in range(0, len(str)): 
        if str[i] == x: 
            index = i 
    return index 

# String in which char is to be found 
str = "Who wants hot watermelon"

# char whose index is to be found 
x = 's'

index = findLastIndex(str, x) 

if index == -1: 
    print("Character not found") 
else: 
    print(index) 

2 个答案:

答案 0 :(得分:0)

尝试一下:

def func(s):
    for i in range(len(s)):
        if s.count(s[i]) == 1:
            return i
    return -1

答案 1 :(得分:0)

我认为这是一种简单的方法:

def f(s):
    for i,c in enumerate(s):
        if s.count(c) == 1:
            return i
    return -1

assert f("who wants hot watermelon?") ==  8
assert f("aa") == -1