Skip to main content

Say 'yes' to types but 'no' to typing!

Project description

https://travis-ci.org/hynek/characteristic.svg https://coveralls.io/repos/hynek/characteristic/badge.png?branch=master

characteristic is an MIT-licensed Python package with class decorators that ease the chores of implementing the most common attribute-related object protocols.

You just specify the attributes to work with and characteristic gives you:

  • a nice human-readable __repr__,
  • a complete set of comparison methods,
  • and a kwargs-based initializer (that cooperates with your existing one)

without writing dull boilerplate code again and again.

So put down that type-less data structures and welcome some class into your life!

characteristic’s documentation lives at Read the Docs, the code on GitHub. It’s rigorously tested on Python 2.6, 2.7, 3.3+, and PyPy.

Authors

characteristic is written and maintained by Hynek Schlawack.

The development is kindly supported by Variomedia AG.

It’s inspired by Twisted’s FancyEqMixin but is implemented using class decorators because sub-classing is bad for you, m’kay?

The following folks helped forming characteristic into what it is now:

Download files

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

Files for characteristic, version 0.1.0
Filename, size File type Python version Upload date Hashes
Filename, size characteristic-0.1.0-py2.py3-none-any.whl (6.8 kB) File type Wheel Python version py2.py3 Upload date Hashes View
Filename, size characteristic-0.1.0.tar.gz (6.5 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page