In the code below, the only part I'M having trouble with is word[position]. I know this is something really simple but I've always had trouble understanding these kinds of statements. I know that it print a random letter (position) from (word). What I don't know is why or how it does that. That's the part that never seems to get explained to me. How can you just put [] around part of a statement and everything just work right? Thanks.
[code]
# Random Access
# Demonstrates string indexing
import random
word = "index"
print "The word is: ", word, "
"
high = len(word)
low = -len(word)
for i in range(10):
position = random.randrange(low, high)
print "word[", position, "] ", word[position]
raw_input("
Press the enter key to exit.")[/code]
Comments
i -> 0
n -> 1
d -> 2
e -> 3
x -> 4
Note that there is not position 5, even though len(word) == 5.
Also, putting '-' in an index has a special meaning in Py. That makes your index start at the end of the word instead of at the beginning. So, you get
x -> -1
e -> -2
d -> -3
n -> -4
i -> -5
That's nice for when you need to get to the back of a string/list, but you don't know how long it is. I guess you could also use it to count backwards...