
    3j                    `    d dl mZ d dlZd dlZdddZedk(  rd dlZ ej                          yy)    )annotationsNc                    t        j                         }| D ](  }t        ||      st        ||      }||xx   dz  cc<   * |S )a  
    Return a collections.Counter of attribute usage for elements in a stream
    or StreamIterator

    >>> bach = corpus.parse('bach/bwv324.xml')
    >>> bachIter = bach.parts[0].recurse().getElementsByClass(note.Note)
    >>> qlCount = analysis.elements.attributeCount(bachIter, 'quarterLength')
    >>> qlCount.most_common(3)
    [(1.0, 12), (2.0, 11), (4.0, 2)]

    * Changed in v4: Returns a collections.Counter object.
       )collectionsCounterhasattrgetattr)streamOrStreamIterattrNameposteks        F/DATA/.local/lib/python3.12/site-packages/music21/analysis/elements.pyattributeCountr      sF     (3':':'<D1h8$AGqLG   K    __main__)quarterLength)returnzcollections.Counter[t.Any])	
__future__r   r   typingtr   __name__music21mainTest r   r   <module>r      s5    #  * zG r   