Refactor, breaking code into modules.

This commit is contained in:
dongar committed 2023-07-08 10:07:36 -05:00
1 parent 2f14532ef1
commit 0639113205
11 files changed
+312 -178

No files matched your search

+12 -10
View File
@@ -1,6 +1,8 @@
#!/usr/bin/python
import wordle
import dictionary
import game
def display_instructions():
@@ -13,9 +15,9 @@ def display_instructions():
make up to six guesses to find out what it is.
After each guess, you get feedback on each letter of your guess.
* {wordle.display_result(wordle.LetterResult.CORRECT, "Correct!")}
* {wordle.display_result(wordle.LetterResult.MOVE, "Correct, in a different location.")}
* {wordle.display_result(wordle.LetterResult.INCORRECT, "Not in the word.")}
* {game.display_result(game.LetterResult.CORRECT, "Correct!")}
* {game.display_result(game.LetterResult.MOVE, "Correct, in a different location.")}
* {game.display_result(game.LetterResult.INCORRECT, "Not in the word.")}
"""
)
@@ -24,7 +26,7 @@ def read_valid_guess(guess_number):
while True:
print(f"Guess {guess_number}: ", end="")
guess = input()
if guess in wordle.dictionary():
if guess in dictionary.words():
return guess
print(f"{guess} is not a valid Wordle word. Please try again.")
@@ -32,24 +34,24 @@ def read_valid_guess(guess_number):
def display_results(guess, results):
print(" ", end="")
for i in range(wordle.WORDLE_LENGTH):
print(wordle.display_result(results[i], guess[i]), end="")
for i in range(dictionary.WORDLE_LENGTH):
print(game.display_result(results[i], guess[i]), end="")
print("")
def play_game():
display_instructions()
target = wordle.select_word()
target = game.select_word()
# To help with debugging
# print(f"The target is: {target}")
for guess_number in range(1, 6):
guess = read_valid_guess(guess_number)
results = wordle.grade_word(target, guess)
results = game.grade_word(target, guess)
if wordle.success_result(results):
if game.success_result(results):
print(f"You won! It took {guess_number} guesses.")
return