Skip to main content

Provides classes for "music set theory"-like analysis.

Project description

“Music Theory” (musictheory) is a package designed to investigate the question “Which chords go with which scales?” A couple of years ago, the author was very interested and obsessed in the question, and decided to put his Python skills to the task. Along the way, the musictheory package was redesigned to be more flexible and extendible.

The package has roughly the same philosophy as Music Set Theory but uses different terminology.


The best thing to do is look at the source code. It contains an excess of documentation strings. Hopefully it makes things clearer.


You can get the application from PyPI through the command:

pip install musictheory


Testing can be performed by executing the following code in the setup directory:

python -m test.test_all


The software has been released using a 3 clause Berkeley Software Distribution (BSD) license. See LICENSE.txt for more information.


  • 0.1 (May 1th 2011) - Create setup script for files.

  • 0.2 (May 11th 2011) - Remove bugs for working with chordgenerator.

  • 0.3 (June 6th 2011) - Add license information. Add more scales.

  • 0.4 (April 24th 2013) - Try to make a half-decent PyPI package.

  • 0.5 (August 14th 2014) - Add some experimental suspended chords.

  • 0.6 (December 6th 2020) - Updated for Python 3.0 compatibility.

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

musictheory- (24.2 kB view hashes)

Uploaded source

Built Distribution

musictheory- (26.1 kB view hashes)

Uploaded py3

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