On a gui on this would be a little bit easier but it's a completley diffrent realm when doing it in the console. It makes it a little more difficult when using stdin.readline() because you can only read line by line. Here is my implmentation.
import sys validanswers = [ 'yes', 'no', 'maybe', 'tuesday', 'never' ] while True: sys.stdout.write("Answer the Question: ") answer = sys.stdin.readline().rstrip() for valid in validanswers: if valid.startswith(answer.strip("\t")): answer = valid else: print "Invalid Answer: Please enter a valid answer" continue break print "You have answered, ", answer I'm at school and wasn't able to test it, but it looks like it should work. Eli Criffield wrote: > Here is what i want to do. I have a question in my program, and i want > to do tab completion for the valid answers. > > Say i have : > --snip-- > validanswers = [ 'yes', 'no', 'maybe', 'tuesday', 'never' ] > > #and i ask > > sys.stdout.write("Answer the Question: ") > answer = sys.stdin.readline().rstrip() > if answer not in valid answers: > print "Wrong!" > --snip-- > > But what i want is when i enter the answer i can hit tab and it'll > complete one of the validanswers > I know i can do tab complete with readline and 'raw_input('> ')' but > that's only to execute python commands right? > > Eli -- http://mail.python.org/mailman/listinfo/python-list