Skip to main content

Python-based package that allows you to solve any N x M Boggle board.

Project description

Pyggle

made-with-python GitHub license

GitHub: https://github.com/andrearcaina/pyggle

PyPi: https://pypi.org/project/pyggle/

Find all possible words given a board and words, with a visual representation of the algorithm! Check lib/docs for package details. For an example on how to use pyggle, check lib/examples/example.py!

Installation

pip install pyggle

Usage

Input is case sensitive (for the board).

The input would consist of: an N x M board as a string with rows separated by spaces. Alternatively, you can pass in a list of lists where each element is the character on the board.

If words is not passed as an argument, it will utilize a text file that consists of 479k words.

If official is not given as a boolean argument, find all words regardless of length, and the letter 'Q' is not represented as 'Qu'. If official is passed as a boolean argument, then the algorithm follows the official rules of boggle. Pyggle will solve and:

  • find all words that have a length greater than 3.
  • The letter 'Q' is now represented as 'Qu'.
from pyggle import Boggle

board = "ea st"

boggle = Boggle(board)

boggle.print_result()

For more functions from pyggle, check:

Output

I don't know how "ae" or "aes" or "ast" is a word, but w/e :P

a: [(0, 1)]
ae: [(0, 1), (0, 0)]
aes: [(0, 1), (0, 0), (1, 0)]
aet: [(0, 1), (0, 0), (1, 1)]
as: [(0, 1), (1, 0)]
ase: [(0, 1), (1, 0), (0, 0)]
ast: [(0, 1), (1, 0), (1, 1)]
at: [(0, 1), (1, 1)]
ate: [(0, 1), (1, 1), (0, 0)]
ates: [(0, 1), (1, 1), (0, 0), (1, 0)]
e: [(0, 0)]
ea: [(0, 0), (0, 1)]
east: [(0, 0), (0, 1), (1, 0), (1, 1)]
eat: [(0, 0), (0, 1), (1, 1)]
eats: [(0, 0), (0, 1), (1, 1), (1, 0)]
es: [(0, 0), (1, 0)]
est: [(0, 0), (1, 0), (1, 1)]
et: [(0, 0), (1, 1)]
eta: [(0, 0), (1, 1), (0, 1)]
etas: [(0, 0), (1, 1), (0, 1), (1, 0)]
s: [(1, 0)]
sa: [(1, 0), (0, 1)]
sae: [(1, 0), (0, 1), (0, 0)]
sat: [(1, 0), (0, 1), (1, 1)]
sate: [(1, 0), (0, 1), (1, 1), (0, 0)]
se: [(1, 0), (0, 0)]
sea: [(1, 0), (0, 0), (0, 1)]
seat: [(1, 0), (0, 0), (0, 1), (1, 1)]
set: [(1, 0), (0, 0), (1, 1)]
seta: [(1, 0), (0, 0), (1, 1), (0, 1)]
st: [(1, 0), (1, 1)]
sta: [(1, 0), (1, 1), (0, 1)]
t: [(1, 1)]
ta: [(1, 1), (0, 1)]
tae: [(1, 1), (0, 1), (0, 0)]
tas: [(1, 1), (0, 1), (1, 0)]
te: [(1, 1), (0, 0)]
tea: [(1, 1), (0, 0), (0, 1)]
teas: [(1, 1), (0, 0), (0, 1), (1, 0)]
ts: [(1, 1), (1, 0)]

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyggle-1.1.314.tar.gz (1.1 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pyggle-1.1.314-py3-none-any.whl (1.1 MB view details)

Uploaded Python 3

File details

Details for the file pyggle-1.1.314.tar.gz.

File metadata

  • Download URL: pyggle-1.1.314.tar.gz
  • Upload date:
  • Size: 1.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.2

File hashes

Hashes for pyggle-1.1.314.tar.gz
Algorithm Hash digest
SHA256 7b2115506abbf97f97547cb34bf9927d0c812ea6d6fe873775cde88e96e5ac03
MD5 50b8073980b32062aa68acea62d1b522
BLAKE2b-256 7a3c6d453a5387223aafd17a9ff990dd2edf1c6880f79bb2cb3cf391c627870d

See more details on using hashes here.

File details

Details for the file pyggle-1.1.314-py3-none-any.whl.

File metadata

  • Download URL: pyggle-1.1.314-py3-none-any.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.2

File hashes

Hashes for pyggle-1.1.314-py3-none-any.whl
Algorithm Hash digest
SHA256 ccbe2915d8b2fbcf2a744758a3691437c8570d2ec7540fa18bd3056d8c8aa1c7
MD5 6c5ec43c5eb7e7010947ed59a7842363
BLAKE2b-256 f0e7e3e628bf43d8569593e205755bccf9f73786cfd7e5b2105ae2732c9f1905

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page