3 回答
TA贡献1856条经验 获得超11个赞
使用str.join
有str.rindex
:
print(''.join(yourList).rindex('l'))
或使用enumerate
:
print([i for i,v in enumerate(yourList) if v == 'l'][-1])
两个输出:
3
TA贡献2011条经验 获得超2个赞
列表索引函数返回第一次出现的索引。解决方法可能是从数组创建一个字符串并使用该rindex()函数。该rindex()函数返回找到子字符串的最后一个索引。
hello = ['h', 'e', 'l', 'l', 'o']
''.join(char for char in hello).rindex('l')
另一种可能性是为列表索引函数提供一个超过第一个找到的索引的起始索引。
hello = ['h', 'e', 'l', 'l', 'o']
hello.index('l', hello.index('l') + 1)
TA贡献1835条经验 获得超7个赞
您可以guessLetter()覆盖任何返回索引的字母:
def guessLetter():
guess = input("Please enter one letter: ")
for letter in wordindexes:
if guess == letter:
index = wordindexes.index(letter)
wordindexes[index] = 0
return index
return -1 # not found
测试
>>> guessLetter()
Please enter one letter: l
2
>>> guessLetter()
Please enter one letter: l
3
>>> guessLetter()
Please enter one letter: l
-1
>>>
添加回答
举报