Skip to content

Latest commit

 

History

History
96 lines (62 loc) · 2.62 KB

README.rst

File metadata and controls

96 lines (62 loc) · 2.62 KB

FlyingCircus

FlyingCircus - Everything you always wanted to have in Python.*

(*But were afraid to write)

 _____ _       _              ____ _
|  ___| |_   _(_)_ __   __ _ / ___(_)_ __ ___ _   _ ___
| |_  | | | | | | '_ \ / _` | |   | | '__/ __| | | / __|
|  _| | | |_| | | | | | (_| | |___| | | | (__| |_| \__ \
|_|   |_|\__, |_|_| |_|\__, |\____|_|_|  \___|\__,_|___/
         |___/         |___/

Overview

This software provides a library of miscellaneous utilities / recipes for generic computations with Python. It is relatively easy to extend and users are encouraged to tweak with it.

Most of the code is used in a number of projects where it is tested against real-life scenarios.

All the code is tested against the examples in the documentation (using doctest).

The code has reached a reasonable level of maturity. However, until it gets a wider adoption, some of the library components may undergo some refactoring in the process of improving the code. Changes will appear in the CHANGELOG.rst. Please file a bug report if you detect an undocumented refactoring.

Releases information are available through NEWS.rst.

For a more comprehensive list of changes see CHANGELOG.rst (automatically generated from the version control system).

Features

The package contains a number of generic functions like

  • multi_replace(): performs multiple replacements in a string.
  • flatten(): recursively flattens nested iterables, e.g. list of list of tuples to flat list).
  • uniques(): extract unique items from an iterable while keeping the order of appearance.

etc.

These are meant to run both in Python 3 and in PyPy. For this reason, dependencies to external modules are kept to a minimum. etc.

Installation

The recommended way of installing the software is through PyPI:

$ pip install flyingcircus

Alternatively, you can clone the source repository from GitHub:

$ git clone [email protected]:norok2/flyingcircus.git
$ cd flyingcircus
$ pip install -e .

For more details see also INSTALL.rst.

License

This work is licensed through the terms and conditions of the GPLv3+ See the accompanying LICENSE.rst for more details.

Acknowledgements

For a complete list of authors please see AUTHORS.rst.

People who have influenced this work are acknowledged in THANKS.rst.