假设我需要找出单词“internet”中每个字母'e'的位置:
但是这段代码只给出了第一个索引。我该如何找到其余的索引?
letter = 'e'
word = 'internet'
idx = word.index(letter)
但是这段代码只给出了第一个索引。我该如何找到其余的索引?
letter = 'e'
word = 'internet'
idx = word.index(letter)
Mark的回答适用于单个字母。我添加这个是因为如果您要查找的子字符串不止一个字符。
如果要使用str.index()
,它可以采用可选的start
位置,并且如果未找到所需的子字符串,则会raise
ValueError
:
>>> letter = 'e'
>>> word = 'internet'
>>> last_index = -1
>>> while True:
... try:
... last_index = word.index(letter, last_index + 1)
... print last_index
... except ValueError:
... break
...
3
6
试试这个:
word = 'internet'
letter = 'e'
[i for i in xrange(len(word)) if word[i] == letter]