commandline version of wordle game and my auto solver.

Overview

Wordle Machine (and Wordle Game) (in commandline)

My implementation of the Wordle game (inspired by https://www.powerlanguage.co.uk/wordle/) and my interactive solving machine for the Wordle game. The strategy is originated from this blog post Best Wordle Strategy — Explore or Exploit and I'm still working on some optimization over that.

How to run?

git clone https://github.com/KevinXuxuxu/wordle_machine.git
cd wordle_machine
  • Wordle game:
# need python 3
# ! for correct letter at correct position
# ? for correct letter at wrong position
# _ for wrong letter
$ python3.9 wordle.py        
Welcome to Wordle!
Guess 1: aeros    # <- your input
Result:  _!__!
Guess 2: unlit    # <- your input
Result:  ____?
Guess 3: techs    # <- your input
Result:  ?!_?!
Guess 4: heets    # <- your input
Guess must be a proper word with 5 letters!
Guess 4: hetts    # <- your input
Guess must be a proper word with 5 letters!
Guess 4: herts    # <- your input
Guess must be a proper word with 5 letters!
Guess 4: hetes    # <- your input
Result:  !!!!!
Congrats!
  • wordle machine (interactive mode)
# need python 3
# next guess is given, input the response in same format
$ python3.9 wordle_machine.py
Interactive mode:
Guess 1: aeros
Result:  _?___    # <- your input
Number of possible words: 568
Guess 2: unlit
Result:  _?_?_    # <- your input
Number of possible words: 52
Guess 3: binge
Result:  _!!_!    # <- your input
Number of possible words: 7
Guess 4: jinne
Result:  _!!_!    # <- your input
Number of possible words: 6
Guess 5: mince
Result:  _!!!!    # <- your input
Number of possible words: 2
Guess 6: wince
Result:  !!!!!    # <- your input
Congrats!

Benchmark

Success rate around 86% for now.

$ python3.9 benchmark.py
max 6 guesses, 10000 plays
Success stats:   {1: 0, 2: 1, 3: 1674, 4: 3382, 5: 2332, 6: 1228}
Success distro:  {1: 0.0, 2: 0.0001, 3: 0.1674, 4: 0.3382, 5: 0.2332, 6: 0.1228}
Failed count and rate:  1383 0.1383

TODO

  • Better word choosing strategy (now just the first word in the possible list)
  • Better cmd option for alternate strategy choice
  • NFT?
  • Web 3.0?
Owner
Kevin Xu
General/Data Infra
Kevin Xu
Command line tool to keep track of your favorite playlists on YouTube and many other places.

Command line tool to keep track of your favorite playlists on YouTube and many other places.

Wolfgang Popp 144 Jan 05, 2023
Microsoft Azure CLI - Azure Command-Line Interface

A great cloud needs great tools; we're excited to introduce Azure CLI, our next generation multi-platform command line experience for Azure.

Microsoft Azure 3.4k Dec 30, 2022
A simple CLI based any Download Tool, that find files and let you stream or download thorugh WebTorrent CLI or Aria or any command tool

Privateer A simple CLI based any Download Tool, that find files and let you stream or download thorugh WebTorrent CLI or Aria or any command tool How

Shreyash Chavan 2 Apr 04, 2022
Simple script to download OTA packages from Realme's endpoint.

Realme OTA Downloader CLI tool (based on this C# program) to create requests to the Realme's endpoint. Requirements Python 3.9. pycryptodome. Installa

Roger Ortiz 64 Dec 28, 2022
Command line interface for unasync

CLI for unasync Command line interface for unasync Getting started Install Run the following command to install the package with pip: pip install unas

Leynier Gutiérrez González 3 Apr 04, 2022
A terminal slots programme in PY

PYSlots PyPI and Test PyPI External Links PyPI Test PyPI Install Look directly at the bugs! Version pip install pyslots "Don't look directly at the bu

Luke Batema 4 Nov 30, 2022
Shazam is a Command Line Application that checks the integrity of the file by comparing it with a given hash.

SHAZAM - Check the file's integrity Shazam is a Command Line Application that checks the integrity of the file by comparing it with a given hash. Crea

Anaxímeno Brito 1 Aug 21, 2022
Tarstats - A simple Python commandline application that collects statistics about tarfiles

A simple Python commandline application that collects statistics about tarfiles.

Kristian Koehntopp 13 Feb 20, 2022
Loading animation; a progress bar

Loading animation; a progress bar. When you know the remaining time or task completion percentage, then you’re able to show an animated progress bar:

Goldy 1 Jan 23, 2022
🌈 Generate color palettes based on Neovim colorschemes.

Iris Iris is a Neovim plugin that generates a normalized color palette based on your colorscheme. It is named for the goddess Iris of Greek mythology,

N. G. Scheurich 45 Jul 28, 2022
Ralph is a command-line tool to fetch, extract, convert and push your tracking logs from various storage backends to your LRS or any other compatible storage or database backend.

Ralph is a command-line tool to fetch, extract, convert and push your tracking logs (aka learning events) from various storage backends to your

France Université Numérique 18 Jan 05, 2023
Tools hacking termux in the name ant-attack

Hello friends, I am ama.player0000. Web developer, software, Android command line (termux). (1)=Well, ant-attack tool is a tool to attack sites and disable them. (2)=You can use those CCTV servers, s

༺AMA.PLAYER༻ 1 Dec 17, 2021
A simple cli tool to commit Conventional Commits

convmoji A simple cli tool to commit Conventional Commits. Requirements Install pip install convmoji convmoji --help Examples A conventianal commit co

3 Jul 04, 2022
Python wrapper and CLI utility to render LaTeX markup and equations as SVG using dvisvgm and svgo.

latex2svg Python wrapper and CLI utility to render LaTeX markup and equations as SVG using dvisvgm and svgo. Based on the original work by Tino Wagner

Matthias C. Hormann 4 Feb 18, 2022
Interact with Replit remotely with the Replit CLI

Replit CLI pip install repl-cli Welcome to Replit CLI! With the Replit CLI Application, you can work with your repls locally, including clone, pull,

Shuchir Jain 4 Aug 18, 2022
Password manager for the CLI simps.

CLI Password Manager Password manager for the CLI simps. Free software: MIT license

1 Dec 30, 2021
A CLI for advanced management of your notes with simple commands

PyNoteManager This is a CLI for advanced management of your notes with simple co

3 Dec 30, 2021
A communist shell written in Python

kash A communist shell written in Python It doesn't support escapes, quotes, comment lines, |, &&, , or similar yet. If you need help, get it from

Çınar Yılmaz 1 Dec 10, 2021
A Python module and command-line utility for converting .ANS format ANSI art to HTML

ansipants A Python module and command-line utility for converting .ANS format ANSI art to HTML. Installation pip install ansipants Command-line usage

4 Oct 16, 2022
telescope.nvim is a highly extendable fuzzy finder over lists.

telescope.nvim is a highly extendable fuzzy finder over lists. Built on the latest awesome features from neovim core. Telescope is centered around modularity, allowing for easy customization.

nvim-telescope 8.4k Jan 05, 2023