>>> print('Anagrams for everyone')
- A simple but powerful pythonic interface
>>> from amargan import Amargan
...
... with open('words.txt') as iterator:
... anagrams = Amargan(iterator)
... anagrams['hello']
set(['elloh' 'hello' 'lehol'])
- A powerful command-line tool
$ find_anagrams -i words.txt hello
elloh hello lehol
$ amargan -i words.txt hello
elloh hello lehol
Extensive configuration options
- Case (in)sensitivity
- Exclusion of word from results
- Output formatting (one per line, multiple-per-line, custom seperator)
- Output to a file
- Read from a file
- Use existing dictionary of words
- Time complexity: O(1)
- Space complexity: O(n) where n = number of words in dictionary.
- Memory efficient, uses iterators extensively.
- Add and remove word(s) from the dictionary.
- Extensively tested with excellent code and branch coverage.
- Extensive error checking with a rich set of checked exceptions.
- Uses Certifiable if available to catch runtime type and parameter validation errors.
- JSON serializable and reconstitutable.
- Fully documented
- Free software: MIT license
- Documentation: https://amargan.readthedocs.io