Символ может появляться несколько раз в строке. Например, в строке sentence
позиция e
равна 1, 4, 7
(поскольку индексация обычно начинается с нуля). но я обнаружил, что обе функции find()
и index()
возвращают первую позицию символа. Таким образом, это может быть решено следующим образом:
def charposition(string, char):
pos = [] #list to store positions for each 'char' in 'string'
for n in range(len(string)):
if string[n] == char:
pos.append(n)
return pos
s = "sentence"
print(charposition(s, 'e'))
#Output: [1, 4, 7]