sequencetools.yield_all_unordered_pairs_of_sequence

abjad.tools.sequencetools.yield_all_unordered_pairs_of_sequence.yield_all_unordered_pairs_of_sequence(sequence)[source]

New in version 2.0.

Yield all unordered pairs of sequence:

abjad> from abjad.tools import sequencetools
abjad> list(sequencetools.yield_all_unordered_pairs_of_sequence([1, 2, 3, 4]))
[(1, 2), (1, 3), (1, 4), (2, 3), (2, 4), (3, 4)]

Yield all unordered pairs of length-1 sequence:

abjad> list(sequencetools.yield_all_unordered_pairs_of_sequence([1]))
[]

Yield all unordered pairs of empty sequence:

abjad> list(sequencetools.yield_all_unordered_pairs_of_sequence([]))
[]

Yield all unordered pairs of sequence with duplicate elements:

abjad> list(sequencetools.yield_all_unordered_pairs_of_sequence([1, 1, 1]))
[(1, 1), (1, 1), (1, 1)]

Pairs are tuples instead of sets to accommodate duplicate sequence elements.

Return generator.

This Page