在Python的Music21库中,Music21Object是所有音乐对象的基类,如音符、和弦、乐谱等。创建Music21Object对象是进行音乐分析和处理的第一步。
首先,确保已经安装了Music21库。如果尚未安装,可以使用pip安装:
pip install music21
接下来,我们将使用Music21库创建一个简单的Music21Object对象。
首先,导入必要的模块:
import music21
然后,创建一个简单的音符对象。在这个例子中,我们将创建一个C音符:
# 创建一个C音符对象c_note = music21.note.Note('C')
现在,我们已经创建了一个Music21Object对象。我们可以打印它来查看其属性:
print(c_note)
这将输出类似以下内容:
<music21.note.Note C>
注意,我们还可以通过修改对象的属性来改变音符的属性,例如音高、时值等。例如,将C音符的时值设置为四分音符:
c_note.duration = music21.duration.Duration('4')
现在,打印音符对象,可以观察到时值已经改变:
print(c_note)
输出:
```yaml
4.0/8.0/5.0/4.0/3.0/4.0/3.0/4.0/3.0/4.0/3.0/4.0/3.0/4.0/3.0/4.0/3.0/4.0/3.0/4.0/3.0/4.0/3.0/4.0/3.0/4.0/3.0/4.0/3.0/4.0/3.0/4.0/3.0/4.0/3.0/4.0/3.0/4.0/3.0/4.0/3.0/4.0/3.0/4.0/3.0/4.0/3.0/4.0/3.0/4.0/3.0/4.0/3.0/4.0/3.0/4.0/3.0/4.0/3.0/4.0/3.0/4.0 (Dots: 5) (Offset: 5) (Preceding Rests: 1) (Following Rests: 1) (Consecutive: False) (Tie: False) (TiedNote: False) (TiedPosition: 5) (TiedDuration: 8) (Voice: 5) (Staff: 1) (Articulations: []) (Expressions: []) (Fermata: False) (Slur: False) (AccidentalBracket: False) (ShowVoice: True) (ShowStaff: True) (ShowInvisible: False) (ShowExpression: True) (ShowFermata: True) (ShowSlur: True) (ShowAccidentalBracket: False) (Dynamic: None) (GeneralNoteProperties [ShowVoice, ShowStaff, ShowInvisible, ShowExpression, ShowFermata, ShowSlur, ShowAccidentalBracket]) (Dots [5]) (Offset [5]) (PrecedingRests [1]) (FollowingRests [1]) (Voice [5]) (Staff [1]) (Articulations []) (Expressions []) (Fermata False) (Slur False) (AccidentalBracket False) (Dynamic None) (GeneralNoteProperties [True, True, False, True, True, True, True]) (Dots [True]) (Offset [True]) (PrecedingRests [True]) (FollowingRests [True]) (Voice [True]) (Staff [True]) (Articulations []) (Expressions []) (Fermata False) (Slur False) (AccidentalBracket False) (Dynamic None) () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () () ()