App to generate an array of 5-letter words all with unique letters, to propose efficient narrowing of qualifying words for Wordle game.
The core functionality generates sets of 5-letter words where no letter appears in multiple words. This is perfect for Wordle strategy as it maximizes letter coverage.
Run from the project root directory:
# Generate default number of words (attempts 3, but may find fewer)
ww
# Generate specific number of words
ww 2
ww 4
ww 5
# Generate words with no repeating letters
ww 3 -u
ww -u$ ww 3
Selected words: ['clack', 'biter', 'found']
Used letters: ABCDEF__I_KL_NO__R_TU_____
$ ww 4
Selected words: ['squad', 'glory', 'mimic', 'theft']
Used letters: A_CDEFGHI__LM_O_QRSTU___Y_
$ ww
Selected words: ['regal', 'couch', 'ditty']
Used letters: A_CDE_GHI__L__O__R_TU___Y_
$ ww 4 -u
Selected words: ['frail', 'wench', 'judgy', 'stomp']
Used letters: A_CDEFGHIJ_LMNOP_RSTU_W_Y_
$ ww 2 -u
Selected words: ['mango', 'build']
Used letters: AB_D__G_I__LMNO_____U_____
$ ww -u
Selected words: ['clean', 'ivory', 'thump']
Used letters: A_C_E__HI__LMNOP_R_TUV__Y_- Samples the word list randomly for variety
- Selects words with no overlapping letters
- Stops when the requested number is reached or no more qualifying words exist
- Displays the selected words and all unique letters used (sorted a-z)
- Maximum letter coverage - Each word introduces different letters
- Efficient elimination - Quickly narrow down possible answers
- Alphabet scanning - Sorted letter output shows coverage gaps
This project includes command-line utilities to examine and modify the word list in words.py.
Run the utility from the project root directory:
ww [command] [options]Display comprehensive statistics about the current word list:
ww statsOutput includes:
- Total word count
- Number of unique words
- Number of duplicates
- Whether the list is alphabetically sorted
Identify the least frequently used letters in the word list:
# Find 3 least common letters (default)
ww find-scarce
# Find 5 least common letters
ww find-scarce --num 5Use case: Helpful for Wordle strategy - these letters appear less frequently in the word list.
Remove duplicate entries from the word list and update words.py:
ww dedupwords.py file in place.
Sort the word list alphabetically and update words.py:
ww sortwords.py file in place.
# Check current status
ww stats
# Clean up the word list
ww clean
ww dedup
ww sort
# Analyze letter frequency for Wordle strategy
ww find-scarce --num 10For detailed command options:
ww --help