What does index mean in python?

An index, in your example, refers to a position within an ordered list. Python strings can be thought of as lists of characters; each character is given an index from zero (at the beginning) to the length minus one (at the end).

For the string "Python", the indexes break down like this:

P y t h o n
0 1 2 3 4 5

In addition, Python supports negative indexes, in which case it counts from the end. So the last character can be indexed with -1, the second to last with -2, etc.:

 P  y  t  h  o  n
-6 -5 -4 -3 -2 -1

Most of the time, you can freely mix positive and negative indexes. So for example, if you want to use find only from the second to second-to-last characters, you can do:

"Python".find("y", beg=1, end=-2)

"index" is meant as "position".

Let's use find() as an example: find() will look for a string in another string. It will start its search at the beginning index called beg and will end its search at the end index called end. So it will only search between beg and end. Usually (by default) beg is 0 (which means it is the first character in the string) and end is the length of the string minus one (which means it is the very last character in the string). So an index is just a position (not only in a string, e.g. also in an array).


Consider this string "Hello". If you wanted to point out to some of it's characters like e you would need an index, which is a position number. Indices in python start counting from zero. So the index of letter e in "Hello" is 1.

Try to run this line of code:

print "Hello".find("e");

It should return you 1.

You can further play with it an run it again what it does. Try to replace "e" with "H", next try something that isn't in "Hello".