import sys import random # I don't know any German, but I know a little Spanish so I went that route english_to_spanish = {"hello": "hola", "thing": "cosa", "dog": "perro", "cat": "gato", "big": "grande", "telephone": "telefono", "beer": "cerveza", "more": "mas", "fat": "gordo"} option = raw_input("Choose nglish to Spanish or panish to English:") num_of_words = int(raw_input("How many words do you want to translate?")) correct_answers = 0.0 # making this a float allows the percentage calculation at end of script missed_answers = [] if num_of_words > len(english_to_spanish): # if you're going to have 1000 words you can print "I don't even know that many words!" # probably get rid of this if block sys.exit() if option.lower() == "e": word_list = random.sample(english_to_spanish, num_of_words) for word in word_list: print "\nEnglish: " + word answer = raw_input("Enter the Spanish translation:") if answer.lower() == english_to_spanish[word]: print "That's right!" correct_answers += 1 else: print "Sorry, that's not right." missed_answers.append(english_to_spanish[word]) elif option.lower() == "s": span_words = random.sample(english_to_spanish, num_of_words) for word in span_words: print "\nSpanish:" + english_to_spanish[word] answer = raw_input("Enter the English translation:") if answer.lower() == word: print "You got it!" correct_answers += 1 else: print "Oops. That's not right." missed_answers.append(word) else: print "I don't understand that." sys.exit() percentage = (correct_answers / num_of_words) * 100 print "You got %d out of %d words right! That's %d percent!" % \ (correct_answers, num_of_words, percentage) print "You missed these words: " for miss in missed_answers: print miss,