I'm actually doing this as part of an exercise from a book. What the program is supposed to do is be a word guessing game. The program automaticly randomly selects a word from a tuple. You then have the oportunity to ask for a hint. I created another tuple of hints, where the order of the hints correspond to the word order. I was thinking if I could get the index position of the randomly selected word, I pass that to the hints tuple to display the correct hint from the hints tuple. I'm trying to do it this way as the book I'm using has not gotten to lists yet.
I'm guessing it also hasn't gotten to dicts yet either? Perhaps a somewhat more natural way of doing this would be something like:
py> hints = dict(word1="here's hint 1!", ... word2="here's hint 2!", ... word3="here's hint 3!") py> words = list(hints) py> import random py> selected_word = random.choice(words) py> selected_word 'word3' py> print hints[selected_word] here's hint 3!
That said, if you want to find the index of a word in a tuple without using list methods, here are a couple of possibilities, hopefully one of which matches the constructs you've seen so far:
py> t = ("fred", "barney", "foo")
py> for i, word in enumerate(t): ... if word == "barney": ... break ... py> i 1
py> for i in range(len(t)): ... if t[i] == "barney": ... break ... py> i 1
py> i = 0 py> for word in t: ... if word == "barney": ... break ... i += 1 ... py> i 1
HTH,
STeVe -- http://mail.python.org/mailman/listinfo/python-list