私はプログラミングと Python は初めてですが、現在の研究の多くは musicxml ファイルからのデータの抽出に関するものです。私は曲を持っていて、調号の一部を形成しない曲で発生する臨時記号の数を抽出したいと考えています。これを行う方法がわかりません。誰か助けてください。これは、私が見ている musicxml ファイルからの 1 つのメジャーの例です。
<measure number='19'>
<print new-system='no'/>
<note>
<rest/>
<duration>768</duration>
<voice>1</voice>
<type>quarter</type>
<staff>1</staff>
</note>
<backup>
<duration>768</duration>
</backup>
<note>
<pitch>
<step>E</step>
<octave>4</octave>
</pitch>
<duration>2304</duration>
<tie type='start'/>
<voice>2</voice>
<type>half</type>
<dot/>
<staff>1</staff>
<notations>
<tied type='start'/>
<slur type='stop' number='1'/>
</notations>
</note>
<backup>
<duration>1536</duration>
</backup>
<note>
<pitch>
<step>E</step>
<alter>3</alter>
<octave>3</octave>
</pitch>
<duration>1536</duration>
<voice>1</voice>
<type>half</type>
<staff>1</staff>
</note>
<note>
<chord/>
<pitch>
<step>G</step>
<alter>4</alter>
<octave>3</octave>
</pitch>
<duration>1536</duration>
<voice>1</voice>
<type>half</type>
<staff>1</staff>
</note>
<backup>
<duration>2304</duration>
</backup>
<note>
<pitch>
<step>E</step>
<octave>2</octave>
</pitch>
<duration>2304</duration>
<voice>5</voice>
<type>half</type>
<dot/>
<staff>2</staff>
</note>
</measure>
この問題は、musicxml ファイルを検索して回数を数えることに変換されます。
<pitch>
<step>*</step>
<alter>**</alter>
...
<alter>
* が (F または C) ではない場所で発生し、* が F または C であり、タグが続かない回数も検出します。
どんな助けやアドバイスも大歓迎です!