Word Search Puzzle Generator
Introduction
The mission of this package is to generate a word search puzzle. The requirements are a list of the word and the dimensions of the puzzle.
For example:
- Given list of words
['Cat', 'Bear', 'Tiger', 'Lion'] - Generated panel:
# _________________________
# | [L] w m e [r] |
# | [i] w [C] [e] x |
# | [o] v [g] [a] q |
# | [n] [i] n i [t] |
# | [T] [B] [e] [a] [r] |
# -------------------------
panel.cells = {
(0, 0): 'l', (0, 1): 'w', (0, 2): 'm', (0, 3): 'e', (0, 4): 'r',
(1, 0): 'i', (1, 1): 'w', (1, 2): 'c', (1, 3): 'e', (1, 4): 'x',
(2, 0): 'o', (2, 1): 'v', (2, 2): 'g', (2, 3): 'a', (2, 4): 'q',
(3, 0): 'n', (3, 1): 'i', (3, 2): 'n', (3, 3): 'i', (3, 4): 't',
(4, 0): 't', (4, 1): 'b', (4, 2): 'e', (4, 3): 'a', (4, 4): 'r',
}
- With the corresponding hidden words:
{
"words": [
{
"value": "cat",
"positions": [
{ "r": 1, "c": 2 },
{ "r": 2, "c": 3 },
{ "r": 3, "c": 4 }
]
},
{
"value": "bear",
"positions": [
{ "r": 4, "c": 1 },
{ "r": 4, "c": 2 },
{ "r": 4, "c": 3 },
{ "r": 4, "c": 4 }
]
},
{
"value": "tiger",
"positions": [
{ "r": 4, "c": 0 },
{ "r": 3, "c": 1 },
{ "r": 2, "c": 2 },
{ "r": 1, "c": 3 },
{ "r": 0, "c": 4 }
]
},
{
"value": "lion",
"positions": [
{ "r": 0, "c": 0 },
{ "r": 1, "c": 0 },
{ "r": 2, "c": 0 },
{ "r": 3, "c": 0 }
]
}
]
}
Install
You can install it using pip tool word-search-puzzle.
Generate a puzzle
All what you need is de define a list of words and provide the dimensions of the panel. Please make sure that the number and the length of the words fit the dimensions of the panel.
from word_search_puzzle.utils import display_panel
from word_search_puzzle.algorithms import create_panel
words = ['Cat', 'Bear', 'Tiger', 'Lion']
result = create_panel(height=5, width=5, words_value_list=words)
print('Attempts: {}'.format(result.get('attempts')))
print('Solution took: {} ms'.format(result.get('elapsed_time')))
display_panel(result.get('panel'))
# Output:
# Attempts: 2
# Solution took: 31 ms
#
# l w m e r
# i w c e x
# o v g a q
# n i n i t
# t b e a r
Metadata
Release files for word-search-puzzle 1.7
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| word-search-puzzle-1.7.tar.gz | 7.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| word_search_puzzle-1.7-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 15.1 kB
Release files / word-search-puzzle-1.7.tar.gz
| Download URL | word-search-puzzle-1.7.tar.gz |
|---|---|
| Size | 7.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
dfc76b788fff6df2546fe6986154d0c46ee745dafd8a2d8f363762cefc450181
|
|
BLAKE2b-256 checksum How to use checksums |
dab42e3c17c7df0517ea2a6a588b55b908c02bca3c92efe2bc1f4f66cb938eda
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.2 requests-toolbelt/0.9.1 tqdm/4.41.0 CPython/3.8.1
|
Release files / word_search_puzzle-1.7-py3-none-any.whl
| Download URL | word_search_puzzle-1.7-py3-none-any.whl |
|---|---|
| Size | 7.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5c464d63680b6c93842aac46546a22177bac13051369c28f8fb7c3605d98c5b8
|
|
BLAKE2b-256 checksum How to use checksums |
9244a5105300a35eb83b7b71864fb433c38d937ad3d447260ff6b2ad8a71a563
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.2 requests-toolbelt/0.9.1 tqdm/4.41.0 CPython/3.8.1
|