Wordle – Game, Solver and Helper!
Free software: GNU General Public License v3
Documentation: https://python-wordle.readthedocs.io.
Features
- Comprehensive CLI Application
Play Wordle in your terminal!
Let the solver play it out for you!
Use the helper mode for solving Wordles provided by other platforms!
- New Wordle every day.
Disclaimer: This has nothing to do with the NYTimes Wordle.
Play more using
--randomoption.Reproducible random Wordle by specifying
--seed.WordleSolver()class for solving Wordle.--solveoption to letWordleSolver()do its work in front of your eyes!--helperoption to activate the helper mode for help with solving Wordles provided by other platforms.
Install
To install, run this command in your terminal:
$ pip install python-wordle
Usage
usage: wordle [-h] [--random] [--seed SEED] [--solve] [--helper]
Wordle on your terminal
optional arguments:
-h, --help show this help message and exit
--random Show a random Wordle
--seed SEED Seed the RNG
--solve Simulate WordleSolver
--helper Take help from WordleSolver for a Wordle in a different platform
Example
Helper Session
Attempt 1
=========
Suggestions: [('kioea', 95.7343887423043)]
Chosen word: aeons
Obtained result: 01201
Eliminated 15868 options.
Attempt 2
=========
Suggestions: [('thrip', 78.0), ('thirl', 78.0)]
Chosen word: thrip
Obtained result: 00000
Eliminated 39 options.
Attempt 3
=========
Suggestions: [('blayk', 72.72727272727273), ('milky', 72.72727272727273), ('bulky', 72.72727272727273), ('lucky', 72.72727272727273), ('mckay', 72.72727272727273)]
Chosen word: milky
Obtained result: 10020
Eliminated 10 options.
Attempt 4
=========
Valid Words: {'smoke'}
Suggestions: [('smoke', 0.0)]
Chosen word: smoke
Obtained result: 22222
Congratulations!
Terminology
All of the following terms are valid in the context of a specific Wordle.
A set of known letters is a set of letters which are known to be present in the Wordle’s word based on clues obtained from the previous attempts.
A set of valid words at any given point refers to a set of words from vocabulary that are possible solutions to the Wordle at that point based on the clues obtained till then.
A letter is said to cover a word if the letter belongs to that word.
Coverage (absolute) of a word refers to the percentage of valid words (at that point) covered by the letters in that word.
Coverage (relative) of a word refers to the percentage of valid words (at that point) covered by the set of
Solver
Solver roughly uses the following strategy,
Guess a word with highest (relative) coverage.
- After each guess, eliminate words based on the clues, e.g.,
Remove all words that contain an
incorrect-letterRemove all words that do not contain the identified
(correct-letter, correct-position)combinationsRemove all words that contain the identified
(correct-letter, incorrect-position)combinationsRemove all words that do not contain a
correct-letterRe-calculate (relative) coverage and guess again
If at any point, number of valid words drops below number of attempts left, guess the valid words one-by-one.
Additionally, there are heuristics to choose a word if multiple words with best coverage-score exist.
Helper
Helper mode can be used to get assistance while solving Wordle from another provider.
Suggestions for words will be provided at each step.
You may choose a word and obtain result.
- Enter the obtained result as a ternary string, i.e., a string made of 0, 1, and 2.
0 : (grey) : an incorrect letter.
1 : (yellow) : a correct letter in wrong position.
2 : (green) : a correct letter in correct position.
e.g., if the third letter turned green and fifth letter turned yellow in the third party Wordle, then you should input 00201 as the result obtained.
Evaluation
WordleSolver has been evaluated on the entire vocabulary.
Setup
Word Size: 5
Vocabulary Size: 15918
Maximum Attempts: 6
Performance
Success Count: 15446
Success Rate: 97.03 %
Average Attempts: 4.58
History
0.1.0 (2022-02-28)
First release on PyPI.
Metadata
Release files for python-wordle 0.1.4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| python-wordle-0.1.4.tar.gz | 1.9 MB | Without provenance | Details for python-wordle-0.1.4.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| python_wordle-0.1.4-py2.py3-none-any.whl | Python 3, Python 2 | none | any | Details for python_wordle-0.1.4-py2.py3-none-any.whl |
Total release size: 3.6 MB
Release files / python-wordle-0.1.4.tar.gz
| Download URL | python-wordle-0.1.4.tar.gz |
|---|---|
| Size | 1.9 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
094e91f0101f7cd6372aab78b5dae80472a288da8dc3f4a5c184ccc7c1721a78
|
|
BLAKE2b-256 checksum How to use checksums |
017422d93462f03aa5350ab57a9024a049a48f5df119c881c285f3d68bb7428c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.1 importlib_metadata/3.10.1 pkginfo/1.5.0.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11
|
Release files / python_wordle-0.1.4-py2.py3-none-any.whl
| Download URL | python_wordle-0.1.4-py2.py3-none-any.whl |
|---|---|
| Size | 1.8 MB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
2d60ab2f48ddd5144dc646dbdba46ee59beb9e7bf9801b6f8f38b080b8a230fb
|
|
BLAKE2b-256 checksum How to use checksums |
f772ac977e5dfcdaad9e20766f7d5fe89d766eecca53941a595a1fab215d2c30
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.1 importlib_metadata/3.10.1 pkginfo/1.5.0.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11
|
Security for python-wordle 0.1.4
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.