Finding the Index of a character within a string
12,595
Try the string.find method.
s = "mouse"
animal_letter = s.find('s')
print animal_letter
It returns the 0-based index (0 is the first character of the string) or -1 if the pattern is not found.
>>> "hello".find('h')
0
>>> "hello".find('o')
4
>>> "hello".find("darkside")
-1
Author by
codeman99
Updated on November 25, 2022Comments
-
codeman99 over 1 year
This may be worded incorrectly because I'm a wee beginner, but if I have a string how to I find a certain characters index like you can with the .index thing in lists.
With a list it makes sense:
l = ["cat", "dog", "mouse"] animal = l.index["dog"]
will return [1], but how do I do the same thing with strings . . .
s = "mouse" animal_letter = s.index["s"]
it says there is no attribute .index
Is there another way I can do this?
-
dansalmo over 10 years
animal_letter = s.index("s")
don't used brackets.l.index["dog"]
does not work either. -
Will P over 10 yearsCan't find a definitive answer to this, is there a difference between my method and yours? s.find vs s.index?
-
-
emkarachchi about 4 yearsDoes this work in scenarios like "hello".find('l') . I think it will return first l letter in the string.
-
emkarachchi about 4 yearsstackoverflow.com/a/11122355/7704650 hope this will work in those kind of scenarios.