Skip to main content

Anagrams for everyone!

Project description

=============
About Amargan
=============

.. image:: https://img.shields.io/badge/Author:%20francis%20horsman-Available-brightgreen.svg?style=plastic
:target: https://www.linkedin.com/in/francishorsman

.. image:: https://img.shields.io/pypi/v/amargan.svg
:target: https://pypi.python.org/pypi/amargan
:alt: PyPi version

.. image:: https://img.shields.io/travis/sys-git/amargan.svg
:target: https://travis-ci.org/sys-git/amargan
:alt: CI Status

.. image:: https://coveralls.io/repos/github/sys-git/amargan/badge.svg
:target: https://coveralls.io/github/sys-git/amargan
:alt: Coverage Status

.. image:: https://badge.fury.io/py/amargan.svg
:target: https://badge.fury.io/py/amargan

.. image:: https://img.shields.io/pypi/l/amargan.svg
:target: https://img.shields.io/pypi/l/amargan.svg

.. image:: https://img.shields.io/pypi/wheel/amargan.svg
:target: https://img.shields.io/pypi/wheel/amargan.svg

.. image:: https://img.shields.io/pypi/pyversions/amargan.svg
:target: https://img.shields.io/pypi/pyversions/amargan.svg

.. image:: https://img.shields.io/pypi/status/amargan.svg
:target: https://img.shields.io/pypi/status/amargan.svg

.. image:: https://readthedocs.org/projects/amargan/badge/?version=latest
:target: https://amargan.readthedocs.io/en/latest/?badge=latest
:alt: Documentation Status

.. image:: https://pyup.io/repos/github/sys-git/amargan/shield.svg
:target: https://pyup.io/repos/github/sys-git/amargan/
:alt: Updates

.. code-block:: python
:linenos:

>>> print('Anagrams for everyone')


Reasons to use amargan
----------------------

* A simple but powerful pythonic interface

.. code-block:: python
:linenos:

>>> from amargan import Amargan
...
... with open('words.txt') as iterator:
... anagrams = Amargan(iterator)
... anagrams['hello']
set(['elloh' 'hello' 'lehol'])

* A powerful command-line tool

.. code-block:: bash
:linenos:

$ 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 <https://pypi.python.org/pypi/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


=======
History
=======

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

amargan-0.1.0.tar.gz (29.6 kB view details)

Uploaded Source

File details

Details for the file amargan-0.1.0.tar.gz.

File metadata

  • Download URL: amargan-0.1.0.tar.gz
  • Upload date:
  • Size: 29.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for amargan-0.1.0.tar.gz
Algorithm Hash digest
SHA256 97b28c0a19e442a71d7b13d48a932af1f7a7655447606ff446923ca85b61fbac
MD5 bfea38e89667b575fa97a086e49ae207
BLAKE2b-256 b389cff2c7646023f99414e56b750aa4612e1eca81acf7a07fa901e6c44ab73e

See more details on using hashes here.

Supported by

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