mingus.containers.NoteContainer

A container for notes.

The NoteContainer provides a container for the mingus.containers.Note objects.

It can be used to store single and multiple notes and is required for working with Bars.


mingus.containers.NoteContainer.notes

Attribute of type: list []


mingus.containers.NoteContainer.__add__(self, notes)

Enable the use of the ‘+’ operator on NoteContainers.

Example:

>>> n = NoteContainer(['C', 'E', 'G'])
>>> n + 'B'
['C-4', 'E-4', 'G-4', 'B-4']

mingus.containers.NoteContainer.__eq__(self, other)

Enable the ‘==’ operator for NoteContainer instances.


mingus.containers.NoteContainer.__getitem__(self, item)

Enable the use of the container as a simple array.

Example:

>>> n = NoteContainer(['C', 'E', 'G'])
>>> n[0]
'C-4'

mingus.containers.NoteContainer.__init__(self, notes=[])

mingus.containers.NoteContainer.__len__(self)

Return the number of notes in the container.


mingus.containers.NoteContainer.__repr__(self)

Return a nice and clean string representing the note container.


mingus.containers.NoteContainer.__setitem__(self, item, value)

Enable the use of the [] notation on NoteContainers.

This function accepts Notes and notes as string.

Example:

>>> n = NoteContainer(['C', 'E', 'G'])
>>> n[0] = 'B'
>>> n
['B-4', 'E-4', 'G-4']

mingus.containers.NoteContainer.__sub__(self, notes)

Enable the use of the ‘-‘ operator on NoteContainers.

Example:

>>> n = NoteContainer(['C', 'E', 'G'])
>>> n - 'E'
['C-4', 'G-4']

mingus.containers.NoteContainer._consonance_test(self, testfunc, param=None)

Private function used for testing consonance/dissonance.


mingus.containers.NoteContainer.add_note(self, note, octave=None, dynamics={})

Add a note to the container and sorts the notes from low to high.

The note can either be a string, in which case you could also use the octave and dynamics arguments, or a Note object.


mingus.containers.NoteContainer.add_notes(self, notes)

Feed notes to self.add_note.

The notes can either be an other NoteContainer, a list of Note objects or strings or a list of lists formatted like this:

>>> notes = [['C', 5], ['E', 5], ['G', 6]]

or even: >>> notes = [[‘C’, 5, {‘volume’: 20}], [‘E’, 6, {‘volume’: 20}]]


mingus.containers.NoteContainer.augment(self)

Augment all the notes in the NoteContainer.


mingus.containers.NoteContainer.determine(self, shorthand=False)

Determine the type of chord or interval currently in the container.


mingus.containers.NoteContainer.diminish(self)

Diminish all the notes in the NoteContainer.


mingus.containers.NoteContainer.empty(self)

Empty the container.


mingus.containers.NoteContainer.from_chord(self, shorthand)

Shortcut to from_chord_shorthand.


mingus.containers.NoteContainer.from_chord_shorthand(self, shorthand)

Empty the container and add the notes in the shorthand.

See mingus.core.chords.from_shorthand for an up to date list of recognized format.

Example:

>>> NoteContainer().from_chord_shorthand('Am')
['A-4', 'C-5', 'E-5']

mingus.containers.NoteContainer.from_interval(self, startnote, shorthand, up=True)

Shortcut to from_interval_shorthand.


mingus.containers.NoteContainer.from_interval_shorthand(self, startnote, shorthand, up=True)

Empty the container and add the note described in the startnote and shorthand.

See core.intervals for the recognized format.

Examples:

>>> nc = NoteContainer()
>>> nc.from_interval_shorthand('C', '5')
['C-4', 'G-4']
>>> nc.from_interval_shorthand('C', '5', False)
['F-3', 'C-4']

mingus.containers.NoteContainer.from_progression(self, shorthand, key=C)

Shortcut to from_progression_shorthand.


mingus.containers.NoteContainer.from_progression_shorthand(self, shorthand, key=C)

Empty the container and add the notes described in the progressions shorthand (eg. ‘IIm6’, ‘V7’, etc).

See mingus.core.progressions for all the recognized format.

Example:

>>> NoteContainer().from_progression_shorthand('VI')
['A-4', 'C-5', 'E-5']

mingus.containers.NoteContainer.get_note_names(self)

Return a list with all the note names in the current container.

Every name will only be mentioned once.


mingus.containers.NoteContainer.is_consonant(self, include_fourths=True)

Test whether the notes are consonants.

See the core.intervals module for a longer description on consonance.


mingus.containers.NoteContainer.is_dissonant(self, include_fourths=False)

Test whether the notes are dissonants.

See the core.intervals module for a longer description.


mingus.containers.NoteContainer.is_imperfect_consonant(self)

Test whether the notes are imperfect consonants.

See the core.intervals module for a longer description on consonance.


mingus.containers.NoteContainer.is_perfect_consonant(self, include_fourths=True)

Test whether the notes are perfect consonants.

See the core.intervals module for a longer description on consonance.


mingus.containers.NoteContainer.remove_duplicate_notes(self)

Remove duplicate and enharmonic notes from the container.


mingus.containers.NoteContainer.remove_note(self, note, octave=-1)

Remove note from container.

The note can either be a Note object or a string representing the note’s name. If no specific octave is given, the note gets removed in every octave.


mingus.containers.NoteContainer.remove_notes(self, notes)

Remove notes from the containers.

This function accepts a list of Note objects or notes as strings and also single strings or Note objects.


mingus.containers.NoteContainer.sort(self)

Sort the notes in the container from low to high.


mingus.containers.NoteContainer.transpose(self, interval, up=True)

Transpose all the notes in the container up or down the given interval.


Back to Index