From 79e45b62e0992486585996da447c4a2664ea7ab9 Mon Sep 17 00:00:00 2001 From: Keith Calise Date: Sun, 10 May 2015 21:21:25 -0400 Subject: [PATCH 1/9] Add normal mode. --- mystery_word.py | 131 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 131 insertions(+) diff --git a/mystery_word.py b/mystery_word.py index e69de29..dcc16da 100644 --- a/mystery_word.py +++ b/mystery_word.py @@ -0,0 +1,131 @@ +import random +import re + +def get_file(): + with open('/usr/share/dict/words') as list_of_words: + words = list_of_words.read() + words = words.split() + return words + +def easy_words(words): + easy_words = [] + + for chosen_word in words: + if len(chosen_word) <= 6 and len(chosen_word) >= 4: + easy_words.append(chosen_word) + return easy_words + +def medium_words(word_list): + medium_words = [] + for chosen_word in word_list: + if len(chosen_word) <= 8 and len(chosen_word) >=6: + medium_words.append(chosen_word) + return medium_words + +def hard_words(word_list): + hard_words = [] + for chosen_word in word_list: + if len(chosen_word) >= 8: + hard_words.append(chosen_word) + return hard_words + +def random_word(words): + random_word = [] + random_word = random.choice(words) + return random_word + +def display_word(random_word,guess): + + letter_in_word = [] + for letter in random_word: + if letter in guess: + letter_in_word.append(letter) + else: + letter_in_word.append("_") + letter_in_word = " ".join(letter_in_word) + return letter_in_word.upper() + + +def is_word_complete(word,guess): + for letter in word: + if letter not in guess: + return False + return True + +def user_Input(): + mode = input("What difficulty level would you like this to be([E]asy,[M]edium, [H]ard): ") + + mode = re.sub(r'[^A-Za-z0-9]','',mode).upper() + + return mode + + + +def get_word(modage, words): + + if modage == 'E'.upper(): + easy_list = easy_words(words) + word1 = random_word(easy_list).upper() + print("Your word has {} letters in it".format(len(word1))) + + return word1 + elif modage == 'M'.upper(): + medium_list = medium_words(words) + word2 = random_word(medium_list).upper() + print("Your word has {} letters in it".format(len(word2))) + return word2 + elif modage == 'H'.upper(): + hard_list = hard_words(words) + word3 = random_word(hard_list).upper() + print("Your word has {} letters in it".format(len(word3))) + return word3 + + #need to put a catch all here +def guess_letters(any_word): + count = 8 + guessed_letter=[] + missed_letter = [] + while count != 0: + guess1 = input("Please guess a letter: ").upper() + guess1 = re.sub(r'[^A-Za-z0-9]','',guess1) + if guess1 in guessed_letter: + print('You guessed that already but,') + guessed_letter.append(guess1) + if len(guess1) > 1: + print("That is invalid, please try again.") + elif is_word_complete(any_word,guessed_letter)==True: + print("Congratulations, you have solved the mystery word, it was {}.".format(any_word)) + break; + + elif guess1 in any_word: + guessed_letter.append(guess1) + print("Good guess!!") + print(display_word(any_word, guessed_letter)) + print("You have {} guesses left".format(count)) + elif guess1 not in any_word: + missed_letter.append(guess1) + print('Sorry that letter is not in the word') + count-=1 + print("You have {} guesses left".format(count)) + if count == 0: + print("Sorry, you lose. The word was {}".format(any_word)) + return + +while True: + if __name__ == '__main__': + words = get_file() + modage = user_Input() + word = get_word(modage, words) + print(word) + guess_letters(word) + + while True: + answer =input('Would you like to play again? (y/n): ') + if answer in ('y', 'n'): + break + print( 'Invalid input.') + if answer == 'y': + continue + else: + print ('Thanks for playing!, Goodbye') + break From 4063da1201ca1594cd2b0055fa6865597d168045 Mon Sep 17 00:00:00 2001 From: Keith Calise Date: Sun, 10 May 2015 21:46:24 -0400 Subject: [PATCH 2/9] Added personalization --- mystery_word.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mystery_word.py b/mystery_word.py index dcc16da..df2adb6 100644 --- a/mystery_word.py +++ b/mystery_word.py @@ -53,6 +53,7 @@ def is_word_complete(word,guess): return True def user_Input(): + print("Welcome to MYSTERY WORD!!!!!!!!!") mode = input("What difficulty level would you like this to be([E]asy,[M]edium, [H]ard): ") mode = re.sub(r'[^A-Za-z0-9]','',mode).upper() @@ -116,7 +117,6 @@ def guess_letters(any_word): words = get_file() modage = user_Input() word = get_word(modage, words) - print(word) guess_letters(word) while True: From 1391767daaf08c2a0419f08b3458be3700232092 Mon Sep 17 00:00:00 2001 From: Keith Calise Date: Sun, 10 May 2015 22:11:04 -0400 Subject: [PATCH 3/9] one more time --- __pycache__/mystery_word.cpython-34.pyc | Bin 0 -> 3004 bytes .../test_mystery_word.cpython-34-PYTEST.pyc | Bin 0 -> 7332 bytes __pycache__/test_mystery_word.cpython-34.pyc | Bin 0 -> 2037 bytes mystery_word.py | 2 +- 4 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 __pycache__/mystery_word.cpython-34.pyc create mode 100644 __pycache__/test_mystery_word.cpython-34-PYTEST.pyc create mode 100644 __pycache__/test_mystery_word.cpython-34.pyc diff --git a/__pycache__/mystery_word.cpython-34.pyc b/__pycache__/mystery_word.cpython-34.pyc new file mode 100644 index 0000000000000000000000000000000000000000..1386a7d454dfd8ad922e8fa5afad89972341d827 GIT binary patch literal 3004 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 zURke Date: Mon, 11 May 2015 08:08:28 -0400 Subject: [PATCH 4/9] this should word --- mystery_word.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mystery_word.py b/mystery_word.py index de09f7b..d026162 100644 --- a/mystery_word.py +++ b/mystery_word.py @@ -96,7 +96,7 @@ def guess_letters(any_word): print("That is invalid, please try again.") elif is_word_complete(any_word,guessed_letter)==True: print("Congratulations, you have solved the mystery word, it was {}.".format(any_word)) - break; + break elif guess1 in any_word: guessed_letter.append(guess1) From ab583b7bc2fe5bed1f0454a5c55efc949f5d8116 Mon Sep 17 00:00:00 2001 From: Keith Calise Date: Thu, 30 Jul 2015 12:09:53 -0400 Subject: [PATCH 5/9] small touches --- __pycache__/mystery_word.cpython-34.pyc | Bin 3004 -> 3687 bytes class.py | 28 ++++++++++++++++ mystery_word.py | 41 +++++++++--------------- 3 files changed, 43 insertions(+), 26 deletions(-) create mode 100644 class.py diff --git a/__pycache__/mystery_word.cpython-34.pyc b/__pycache__/mystery_word.cpython-34.pyc index 1386a7d454dfd8ad922e8fa5afad89972341d827..f315181a1528c6761447d9fbde7459d2f19c11b5 100644 GIT binary patch delta 1905 zcmZt{%WfN0^xUy${F=lhX=p;?a?_@?E>38Rh@cWGRf$>_DN&pf#UWUe%&k3s%p`ZN zlX^&Gp=@DMd52i=53DM&VT;5M%%U44Dul#0aL#oeuEfmv=-hkWPyc%P_3Zq=_DHt= zYW3-Nd4NA*=t&^{8UDg4_G11g_WO(9u6>;Yk%too%m;Y>2*g|9UZ!(p48$0?v(U6a z{tc^07UST)qj`xk1x*8_$@c#M{D?NAX{&hJa2b?~gt-*F2(T=(jTu8;M|{_y8+?dz9_BxIK(8^( z28IGUO)G%m9_hf34GQ;2hdy99PJqJDF$YOdCLARwD}#^Wp-jp!BfWENKZ3H(w4n%U z!)%?IJ2v0cW)5pJ2ilTDuDu48I#Xt8W!8|g)P=Gh`IZ{imV&Z7C{N6mqbr+1NAkl! zy1ed${M%#R5=sdfa?j_UirGrc9v9O(pK=6~Bqs@Q1hMrjkZniF9Nml&7)MY{$5uOV zotls)Ko2Szfd#F$yiiq4GIXbsYwOYu-QBHZ>R92Sn-8T$8Z}5E7N=`MRZ0EOoIGDGpDIC zY=2UhQ;VD!;AV9Dz0@38Xr%Rc4F+%(dC4MnC|Wd`HgawQ&F8d6bVOx{t4BSn+m?}Y zw$^sus29poR9NiW#vn2pbz~pW$|xx*_!zVGKPpZ$hFhhfMMmHBcV@pq;o-NTyDtAk z;(`Mz0QCRL+?bc|A{G^}4SB62!ce$e)g8s1mK2WLgTh?-g@-u!@#deM|E0` z@&Z3B@h(c$oddzcpmm@n1#fpl?BA~L=@PauKh%A_7}<}4z#SNwn~SE%qL#&;A6O2t z_n)a~z8pxD*Io>UfqNnE`GKODP<5eIM_jWFd}sxsSmf)cq*IHF9!FskhhYTYar{lP36?bIoJH(yP04E9W(6h}Q8G?ft8K^gtJUcGM$l=wI}P|AT6k_6NvY1PTNwo3Z8i;h~U{ v_x;>^OLy_g#@%jPcG^ziYuYyAS^JV*uvrG*JVu_tsBK&g_%FaLBg_5+UW1nx delta 1239 zcmY*Y%}>-o6n``Q*sqoa3|Wa7t0GV(7~o>i1BoBegTw@l$*O4z9oWLsh3PE9W;c7l zlb+08@#fi!S1y9-kO-1U%DHnhqDVy4@DF=cV-ut?uRn+mpq?k zR-EiMRqs`9rfXsvSA5Rjl_#nFHZKudK}&JZRz4!TAAMzDtOtD(M_DC6KIG~hmCTx|7Is|UNq%2eqU#V z!i!Q_ICNWoqk}AWSeNKSb`QQ18A$N90rH1#xk0QbP7OiU@u?sg6>7s^W#OTo08w9 zbf|{9P)f+Y6g-6mDB(pvFRx(9%t)1#_``y{K!${oaVap~T$2vYP&cH9%vx_W6IFFp zLxuHVP&6CrJE#p^rE2T>ygUc6Hjs%HjMj>)KMtVjBg~p!LIcdkyUb>}%|_W6jv{ky z7v~RPS4T5t95mPO2Qox1d^mBr^wI&^l{}} kuQW6@Gl_E)DR*oq@8s~d90z^V8FOYGR^SC*W<~C>KP^o7b^rhX diff --git a/class.py b/class.py new file mode 100644 index 0000000..bfa3f9b --- /dev/null +++ b/class.py @@ -0,0 +1,28 @@ +cohort1 = { + 'Avery': [63, 62, 41, 66, 84, 82, 73, 89, 69, 75], + 'Blake': [79, 97, 78, 78, 74, 69, 80, 100, 74, 70], + 'Casey': [93, 97, 99, 95, 98, 91, 96, 99, 100, 88], + 'Dakota': [71, 65, 72, 65, 24, 100, 84, 71, 59, 50], + 'Elliot': [84, 73, 90, 72, 69, 93, 61, 65, 81, 98], + 'Fox': [80, 91, 90, 80, 83, 73, 84, 89, 84, 84], + 'Gale': [41, 7, 64, 60, 78, 48, 73, 50, 69, 89] +} +#student_means: Return a new dictionary, with students as keys and their mean test score + +#as the value. Then add an optional argument, drop_lowest. When true, +#drop each student's lowest score before calculating their mean. +#student_grades: Return a new dictionary, with students as keys and +#their grade as the value. Add the optional drop_lowest argument like in student_means. +# A is 90+, B is 80-89, C is 70-79, D is 60-69, F is below 60. +#all_scores: Return a list of all the students' test scores. +#class_mean: Return a float, the mean score for the entire class across all tests. +#score_histogram: Return a new dictionary. Each key is a letter grade (A, B, C, D, F). The value for each is all the students' test scores that fall within that grade range. +def mean(nums, drop_lowest =False): + if drop_lowest: + nums = sorted(nums[1:]) + return sum(nums) / len(nums) + +def grade_means(cohort1, drop_lowest = False): + return {student: mean(cohort1[student], drop_lowest=False) for student in cohort1 for student + in cohort1} +print(grade_means(cohort1,drop_lowest = False)) diff --git a/mystery_word.py b/mystery_word.py index d026162..c11fce8 100644 --- a/mystery_word.py +++ b/mystery_word.py @@ -9,7 +9,6 @@ def get_file(): def easy_words(words): easy_words = [] - for chosen_word in words: if len(chosen_word) <= 6 and len(chosen_word) >= 4: easy_words.append(chosen_word) @@ -46,7 +45,7 @@ def display_word(random_word,guess): return letter_in_word.upper() -def is_word_complete(word,guess): +def is_word_complete(word, guess): for letter in word: if letter not in guess: return False @@ -54,11 +53,11 @@ def is_word_complete(word,guess): def user_Input(): print("Welcome to MYSTERY WORD!!!!!!!!!") - mode = input("What difficulty level would you like this game to be [E]asy, [M]edium, or [H]ard: ") + mode = raw_input("What difficulty level would you like this game to be [E]asy, [M]edium, or [H]ard: ").upper() - mode = re.sub(r'[^A-Za-z0-9]','',mode).upper() + modage = mode.upper() - return mode + return modage @@ -68,7 +67,6 @@ def get_word(modage, words): easy_list = easy_words(words) word1 = random_word(easy_list).upper() print("Your word has {} letters in it".format(len(word1))) - return word1 elif modage == 'M'.upper(): medium_list = medium_words(words) @@ -87,14 +85,14 @@ def guess_letters(any_word): guessed_letter=[] missed_letter = [] while count != 0: - guess1 = input("Please guess a letter: ").upper() + guess1 = raw_input("Please guess a letter: ").upper() guess1 = re.sub(r'[^A-Za-z0-9]','',guess1) if guess1 in guessed_letter: print('You guessed that already but,') guessed_letter.append(guess1) if len(guess1) > 1: print("That is invalid, please try again.") - elif is_word_complete(any_word,guessed_letter)==True: + elif is_word_complete(any_word, guessed_letter)==True: print("Congratulations, you have solved the mystery word, it was {}.".format(any_word)) break @@ -111,21 +109,12 @@ def guess_letters(any_word): if count == 0: print("Sorry, you lose. The word was {}".format(any_word)) return - -while True: - if __name__ == '__main__': - words = get_file() - modage = user_Input() - word = get_word(modage, words) - guess_letters(word) - - while True: - answer =input('Would you like to play again? (y/n): ') - if answer in ('y', 'n'): - break - print( 'Invalid input.') - if answer == 'y': - continue - else: - print ('Thanks for playing!, Goodbye') - break +if __name__ == '__main__': + words = get_file() + modage = user_Input() + word = get_word(modage, words) + guess_letters(word) +#when i come back..To create the dictionary for evil mode.use + #fam = word_families + #word_fam = {} + #word_families.setdefault(fam,[]).append(word) From 0d6463fbefd20f64f3e89e9c748115b2a97d066a Mon Sep 17 00:00:00 2001 From: Keith Calise Date: Sat, 12 Sep 2015 20:00:09 -0400 Subject: [PATCH 6/9] touch --- mystery_word.py | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/mystery_word.py b/mystery_word.py index c11fce8..a473056 100644 --- a/mystery_word.py +++ b/mystery_word.py @@ -33,7 +33,7 @@ def random_word(words): random_word = random.choice(words) return random_word -def display_word(random_word,guess): +def display_word(random_word, guess): letter_in_word = [] for letter in random_word: @@ -89,13 +89,12 @@ def guess_letters(any_word): guess1 = re.sub(r'[^A-Za-z0-9]','',guess1) if guess1 in guessed_letter: print('You guessed that already but,') - guessed_letter.append(guess1) - if len(guess1) > 1: + guessed_letter.append(guess1) + elif len(guess1) > 1: print("That is invalid, please try again.") elif is_word_complete(any_word, guessed_letter)==True: print("Congratulations, you have solved the mystery word, it was {}.".format(any_word)) break - elif guess1 in any_word: guessed_letter.append(guess1) print("Good guess!!") @@ -104,17 +103,15 @@ def guess_letters(any_word): elif guess1 not in any_word: missed_letter.append(guess1) print('Sorry that letter is not in the word') - count-=1 + if guess1 in missed_letter: + count-=1 print("You have {} guesses left".format(count)) if count == 0: print("Sorry, you lose. The word was {}".format(any_word)) return + if __name__ == '__main__': words = get_file() modage = user_Input() word = get_word(modage, words) guess_letters(word) -#when i come back..To create the dictionary for evil mode.use - #fam = word_families - #word_fam = {} - #word_families.setdefault(fam,[]).append(word) From f240c8cdf5aae7a42de227a085262238e764ed79 Mon Sep 17 00:00:00 2001 From: Keith Calise Date: Mon, 13 Mar 2017 20:36:57 -0400 Subject: [PATCH 7/9] test --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 4b20df0..13158ad 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ # Mystery Word - +This is a test ## Description Implement the game of Mystery Word. From f7c08cab95e922f439ea65ae163a6cf4ca3117d6 Mon Sep 17 00:00:00 2001 From: Keith Calise Date: Sat, 20 Oct 2018 20:56:37 -0400 Subject: [PATCH 8/9] tweaking game flow --- mystery_word.py | 44 ++++++++++++++++++++++++++++++++++++-------- 1 file changed, 36 insertions(+), 8 deletions(-) diff --git a/mystery_word.py b/mystery_word.py index a473056..68bd8d8 100644 --- a/mystery_word.py +++ b/mystery_word.py @@ -58,6 +58,7 @@ def user_Input(): modage = mode.upper() return modage + @@ -67,16 +68,31 @@ def get_word(modage, words): easy_list = easy_words(words) word1 = random_word(easy_list).upper() print("Your word has {} letters in it".format(len(word1))) + word_cart = [] + for i in range(len(word1)): + word_cart.append("{}".format("_")) + word_show = " ".join(word_cart) + print word_show return word1 elif modage == 'M'.upper(): medium_list = medium_words(words) word2 = random_word(medium_list).upper() print("Your word has {} letters in it".format(len(word2))) + word_cart = [] + for i in range(len(word2)): + word_cart.append("{}".format("_")) + word_show = " ".join(word_cart) + print word_show return word2 elif modage == 'H'.upper(): hard_list = hard_words(words) word3 = random_word(hard_list).upper() print("Your word has {} letters in it".format(len(word3))) + word_cart = [] + for i in range(len(word3)): + word_cart.append("{}".format("_")) + word_show = " ".join(word_cart) + print word_show return word3 #need to put a catch all here @@ -84,28 +100,40 @@ def guess_letters(any_word): count = 8 guessed_letter=[] missed_letter = [] + print guessed_letter while count != 0: guess1 = raw_input("Please guess a letter: ").upper() - guess1 = re.sub(r'[^A-Za-z0-9]','',guess1) - if guess1 in guessed_letter: - print('You guessed that already but,') + guess1 = re.sub(r'[^A-Za-z0-9]','',guess1) + if is_word_complete(any_word, guessed_letter)==True: + print("Congratulations, you have solved the mystery word, it was {}.".format(any_word)) + break + elif guess1 in guessed_letter or guess1 in missed_letter: + print('You guessed that already but we wont hold that against you') guessed_letter.append(guess1) elif len(guess1) > 1: print("That is invalid, please try again.") - elif is_word_complete(any_word, guessed_letter)==True: - print("Congratulations, you have solved the mystery word, it was {}.".format(any_word)) - break + elif guess1 in any_word: guessed_letter.append(guess1) print("Good guess!!") print(display_word(any_word, guessed_letter)) - print("You have {} guesses left".format(count)) + if count > 1: + print("You still have {} guesses left".format(count)) + else: + print("You still have {} guess left".format(count)) + elif guess1 not in any_word: missed_letter.append(guess1) + guessed_letter.append(guess1) print('Sorry that letter is not in the word') + print(display_word(any_word, guessed_letter)) if guess1 in missed_letter: count-=1 - print("You have {} guesses left".format(count)) + if count > 1: + print("You have {} guesses left".format(count)) + else: + print("You have {} guess left".format(count)) + if count == 0: print("Sorry, you lose. The word was {}".format(any_word)) return From 398af91e9b79f70a3d5ce61dde8c470c7fa99c2b Mon Sep 17 00:00:00 2001 From: Keith Calise Date: Sat, 20 Oct 2018 21:07:06 -0400 Subject: [PATCH 9/9] passing all tests --- __pycache__/mystery_word.cpython-34.pyc | Bin 3687 -> 4045 bytes .../test_mystery_word.cpython-34-PYTEST.pyc | Bin 7332 -> 7332 bytes mystery_word.py | 8 ++++---- mystery_word.pyc | Bin 0 -> 4682 bytes 4 files changed, 4 insertions(+), 4 deletions(-) create mode 100644 mystery_word.pyc diff --git a/__pycache__/mystery_word.cpython-34.pyc b/__pycache__/mystery_word.cpython-34.pyc index f315181a1528c6761447d9fbde7459d2f19c11b5..ced42a9c109ea33c17e15e21e952408734245f9c 100644 GIT binary patch delta 1863 zcma)6&5zqu5TCIf=fh5SH&N3q%I>;t+HEQ-ZIM6~D$qhzxF8|zq3R-(x@$Kdn~l5A z4(VCbmlo;8dz4u_GI47do#cH z{QLQr>NiWZ-|S-H)9=4}^~*VcpWu<7PX2j%!f)Z7+SjIsuv$MP&*NQeef$6oM3kt1 zhI8_B{SMAcVZ4P)@=xPutjYVC_i#mSn~TqBRDhosxX|NdA^@uNCIUtXp2l8>EWik0 z2&s=Sb(`{bwtC?yZj>Vf zSiq8IYvLIB>x_Ya7Ci<%3eSC1Jqb?-7{Z1I;sg0>_UyPxcnr9?0+9((28KH0r2FD) zRT$COfKC=X9XbYh#w3SZ*Wj|3fliL|Gu18i@+MNpXlwj4#LdQr%Lt5Je6jWV6IM z^LijQ-AM4ek2AvUHGN@ocAgE<9z=-@tv zim|;`NQPl67|3(^i{o>&2(%K~Si-|-((@S35CaVw|DTvRMeEmzkLt$|c3JutMTw## z1b*w9vO4Q%sMLcuf572bX=y_T@rTlt;_F0L#GaI>#7;h0oypCVN@{4#O6L9>N}a?2 zlT#C_y|T5$i>TR#3E{iS*Vz{zsp*P(W28JuB6)8}OQKW-ULH0K5Z|fEiU*wLiX=Fy z^33#7{ytdT8_8pNq!>9wTA7qv=Co%ksH6(oKj*i8SK(qBo$Ke0edpFFN%^7E^{+=e)xGnwVxK-U&$&HURsNMx)#UT` z@slh+;jrP)b*u?L*2DfavB;riHcE$V1W@{1CYEXUj-!HuU;}2{x8`)3BuUyGG=65`iU9`Sr zKl|SLi)XUO_G6yUt~lqG8JSr4-jj^3L8L@*Bmq;V$Pn!SR)ZQQMR+ah5gnP-u;_>c z!gMvTv#*`~YhCZdkC*1w!@2I&xwk*cDX?>UN7a)wx9iEyUYZ*!&dv7TJvD(y0q53s zE6Qfw$)&d>d;x;E$ewZ5P&3d!HN=8Pkmp(cg9(Bn%LXzbP07vdD|hj*XVR)5$nH7v z4W$nCbVUc2)X_uYCtD9}N>LMv17uUr7O4L+Cfb=b;OrTt?uj!;J97q{&A6w%xr5$Z zT8;Wltq)D#&iQ7}%RxaCp-QMojfwCfa_6&_+7457Ml2&DDiA>-cR*LT5i1+h^`SUy zcWPVpcDioww^THrxyARV&jBK%!X8(6!muEY-Xlc@e zy9};CNYf;>&C(2}t`M|fnI=#g!J-Isfk{)0PG~NF*JS zRlwm+9BF?>4T-G)?$ zcTG1y`If?!kbUdTx#~O)t6R;grAfY&t(Ai84{vG8yU}Vz{>EP1Zcj~h$M3fG{LS!w z?0OByL^-Qy~&%h;J0YPIdKp44jHnYGs5R^)e(-d4RC`)SMH*$O*; zxB>jSf3b5V3EuH@?&O?whd)TJ-w(Iyk*_a;%iYP_n_<#y`)GB&t)6U5UGk;!d!0Bi z)Kvsi^AN$P8WsIQwpf0BL2d;#E8--ZB;1Z`HT_GdHw37P5N2{GOxpXgQhs(+er@4R nm^|Dqp5qlf7sK{E=tb{Euj=s-Mj4fxsM^Edf?J3kqsadQ;X@eG diff --git a/__pycache__/test_mystery_word.cpython-34-PYTEST.pyc b/__pycache__/test_mystery_word.cpython-34-PYTEST.pyc index 50592dcec8ddfcf482b658f141ddfa3d9f35675e..47b8012b80d0eed5ec5890606513fb604ed3e0a1 100644 GIT binary patch delta 2143 zcmd5-O=uHA7@gU_Y&P54q(5fcQv8Ex?ZIjdtsX=KEh4ooDENalbW_sUv|+QQ6eAvb z6EFHH9;|4ks3;0jFVa(vrGlq|M4@={Ab9A_n=`YsYo|iP-n8ZLvsk-&`{|iqF+Ri%PO2j z1{Dq`WkkNWW2DR!%Rc#KjM(|=ml+JxIui!eeke%iqjGUJT_wj6SeEv{52;IQLI^nt zu;jf)bflCS%R1Sj1IOiVn33<|94JcV|GLOR(n(OyjpV4Bg{(b3T^N~}a_kaBv|~5{ zgRyQ{*E`{f_E>Zt+0p{i5<4os<$eDxy%sF^Z^l;SlXO61?5#gZQp3HNcddO^G^n44q4h@!<=X2NqAY83N2tr zf`G-KD6p&E7g(zgFVHIs0%sT$1qOEb0&+umfiXo8m}XEEC^tOiPt+3+FYrhe1YR&G z3cQU!=K{Gzc!5<-5U4UJ3VctzIvA&s>Y)dnDkn(}x+RWQO?$jloXE_wpgPUuclglw z8~4#6TUu{QktIh$B>78DA)}!pSEhT9FSSvYD;1T!m^loRf?zqR$kxbUdNf{I$)J*b zDbT#;G(4>zIgLxKlI=?4s?*_2x7;ENlY|<>WO5%=TDoc)Jd3GzVDJ)y;SJv7G~D1b zPP47S6ujA4+h7kHoWS5I2E!Y?$!WO3JDg@)gBNSQ-flK@fw@BrhBuevG~C<_r`gur zewed5YZ^4z&;|xA2E!X1;xydgbxz}U{F6VDf0{q~M_yJTV>Q9G*1^=43G1a3)-YaT nb2TzLRVYqm-7MMiYpoZs1?RLB47a_*?SR`)lfQ-j_N#vY0+XWO delta 2138 zcmd5-Pe>F|7=JTwX7;bPqq6O;W=4Yjg-l)2OLegg!lJMsBiR^3w=|nw6TvVsIs~1* zE|C$1P+X~19$^zaRnaQ3zz1!|E)_awLgS6;B7x% z$NKg!1!m*L@L<-qHt@U~W`m{@TU-d9RLz(;$9Zu%2a6h>&aQ>($Wb~}D@;eeDIBuV z!>9jE)&~p`Cd=`-Opr^smMmPv*(4p9JUdv$g#3=q(&h`Mf72{Diwvvl#+Xc*>7w7ZffbNoQk9Edan zUuhcm7MnRa7EiX2a6Vv=X@tga3O{0R4kL+XSc>oS8SGL#29FagZ}7ULNrSf}ZBqtY zV1BFLV6*Bm*ha9t!9Gco26K|ODT8Ny-7~qzTob|a<}#8d&7G69O_|#TGs!(ZgMYjR zLz;|CX=rbpzgAi&vg6FrBa&9uV52X8x|2WpCF_t)*1^TpDWe^qj0qo8@kr^fWp~0# YsyDLsq>|84zpT`Q($Fmif2QHWUtAlRhX4Qo diff --git a/mystery_word.py b/mystery_word.py index 68bd8d8..ad77227 100644 --- a/mystery_word.py +++ b/mystery_word.py @@ -72,7 +72,7 @@ def get_word(modage, words): for i in range(len(word1)): word_cart.append("{}".format("_")) word_show = " ".join(word_cart) - print word_show + print(word_show) return word1 elif modage == 'M'.upper(): medium_list = medium_words(words) @@ -82,7 +82,7 @@ def get_word(modage, words): for i in range(len(word2)): word_cart.append("{}".format("_")) word_show = " ".join(word_cart) - print word_show + print(word_show) return word2 elif modage == 'H'.upper(): hard_list = hard_words(words) @@ -92,7 +92,7 @@ def get_word(modage, words): for i in range(len(word3)): word_cart.append("{}".format("_")) word_show = " ".join(word_cart) - print word_show + print(word_show) return word3 #need to put a catch all here @@ -100,7 +100,7 @@ def guess_letters(any_word): count = 8 guessed_letter=[] missed_letter = [] - print guessed_letter + print(guessed_letter) while count != 0: guess1 = raw_input("Please guess a letter: ").upper() guess1 = re.sub(r'[^A-Za-z0-9]','',guess1) diff --git a/mystery_word.pyc b/mystery_word.pyc new file mode 100644 index 0000000000000000000000000000000000000000..c1ba8eb72d3c4dd9cfae31368d5f4da4a5159f4a GIT binary patch literal 4682 zcmcgw&u<(_6|U;}<#EP#Y&J_atd`Dh5Tljj$%0@ZS`bT;wK>GQ^aPp2GNaCPd8Y05 zw9{1++pK-cN?edQapS_B147~ghdppa;*Wtp0KV^4&txKJ1JYW|OqXB%diCDx_r3SZ zm47YF7ytPCc3+jB3jY2GkNqQ>1V61Zr5;UbtsZHW1nM&k1}dotQBg@%h^k6zLex}J z7ox6`h7b*v%n324lBN(%mCOq<$wBfG~G7YY}zYmJ7ZgP>@Y4&CrSIRbCef}ZCA*-iY7laBOwYCCypoE z!z^{ez)`j=wXT=%_GF(d@EkCu+HCB1(R6-hO<_CxCUwJpj6J5a4s!gsb8upvDNb&3 z*Q6uN)(%hH9JUUO>+PnQp){5QN-yaazI_dvg7Ue8$9{}vAgUk#n3lM^b6cGSG|?&S zfS0V*zE;J;%t)a2YaF4iU@=*ypDZZ+wlLNeOKhffa84iB*CsygbdqE7Jxg6pd25UG2B zbwy$&!0P(|ICLd`w-C^$fCeMZODrrA?P!Rew4ui?eODsgUY?F5kd1-tqD{#niY;S< zv9Z=IqMI3qz|~7Vti^(H#Ocj&^dm~ zo9%Vl5USH`4OKK4__|LTY72^YXMKTz{i8UuMlA547#j~`Do+?kuYrhOM{_aST?VJr zieL5m`N1J9XKrDv4Di%%PWLe&em(W=Z(;!NczpwU;05Ddm&xv2;wxXX4Y6a(WH`fw zE)VZN>^`^`Jq))#j_zKcd~C!;!`OvMy1Se9$C*0`GxOAB;ZZ)$lJF!ShgrH04#U)j zgV^(WY{Kn(I|%fv;r9Ix*|S;pB#=|^cD2{I4ygSCq^6x zL_9DTV_JrxF|uv%Cp?kKw=`-^uLP|?&_-xefIFQ18=!z70lNZG&y5 z5~w&4tt|@xMWU-hxOfC&YJG!h?T*#T5* zYOle044l=~X&ubKw@abwGeW(qQ4o|u!IdFYgIh|WP=rl|nk(6#7iu!|YN7u51wzev zp&BzneXd<|B2-g^LTNV@3U%OAsQE7xYBKX`p?;-bZmD_IO<2=0F>OjjyJz15{V*RF zaNr^dhp`PmJ%dX#V%abqg{iXy)u(3>kr*+7%Fg@JZnWt{;;d3>`0&Swy_**Yv6Eyk z;Sl*@U?lBFE8IfIikPa}LQxD~6cGke6iGe6a6`%7gYC*Xp&u7c4o{zt*o@c@#NV2(qW`~)^_g*~_!M}5 z!3a=?)a;WTTco%E?tlC{4M&IX>{nFrXU%XYsjdunRXUo-5x_&_RERyI&eyuYY)ydd z1VR9nQ~~Q7pFFw7^*981)c#uNisaPa^I8Mof$;>48jA@zK_>1x`&Cu^m3N)>jgk$b z1=8^q{lYHXfe@jAiis@X3T6EMs>aO-fxzP!jQ*r?J(?Zx0)jI#7H9;FsXQ+pvvB?x z2}l%aAoiP6--C5=m3n^uXF6G&J#Mt9lBL;!((bsgL9)v-Q`!!qLT&uE1aAb*rj&yz zC}qEj=93IgZbGRN!nj1-?a&eu+rRkm=A-!LFK^xa{tjL!cCaM9laB^P?8aH_(tKoB zCD{z)rzW&{_S7WEIVLPGNrL88fHyo6M6cP~-~gQa17$I?Se)^)b`m}wW1+#Okqd`8 z@|a_eiwAK!vX1AZbV>U*ng^UgZc9f`aXU*^Lu6zs;))Z$VNFz6&-28eb^ZDz#)Q_T zS%w$`kr8A>bz`CWuCs5J;=N>vUvL8px_N<9L^dCxD99*>JR?z_2(&DHspw0OVO?@= z(jO2`4)BJ}a1UDxAHbv%7`+*Nw4vZ>`w^eX03&^WBzi;=82(1B9K;)c^nh literal 0 HcmV?d00001