音乐编码之道(五)|music21创建、打印、播放音符

这篇博客介绍了如何使用music21库创建、处理音符,包括理解音符对象和模块,创建不同类型的音符,以及如何显示和播放音符。内容涵盖Python新手入门指导,如何导入和使用music21模块,以及音乐编码的基本概念。
摘要由CSDN通过智能技术生成

用户指南,第2章:音符

乐谱,顾名思义,由一系列音符组成,这些音符在一条五线谱上按顺序或同时放置。除此之外还有其他一些元素,如谱号、调号、连音线等等,但音乐的核心是音符;因此,要在music21中取得进展,您需要了解工具包对音符的处理方式以及如何与其一起工作。

前往IDLE或在命令行中输入“python”(Mac上的终端或Windows上的“运行:cmd”),让我们开始吧。

创建和处理音符

music21概念中的标准音符包含在 Note 对象中,该对象在 Note 模块中找到。

如果你是Python新手,请阅读这部分 (其他人可以跳过): 注意对象名称和模块名称之间的区别。模块通常以小写字母开头,并且可以包含一个、多个或零个对象。Music21的对象始终以大写字母开头。因此, note 对象位于 Note 模块中。大写和小写的区分对于Python非常重要:如果你使用错误的大小写键入对象名称,它将不知道该怎么做,并且不会提供任何帮助来区分它们。

note 模块中,除了 note 之外还有其他类。 最重要的是 note.Note ,它表示休止符。如果我们使用以下命令加载music21:

note.Rest

那么你现在可以通过在任何命令行中键入

from music21 import *

来访问 note 模块。

note

如果你得到类似的结果,说明你可以随时通过键入

>>> note 
<module 'music21.note' from 'D:\music21files\music21\note.pyc'>

来访问music21 note 模块。文件名“from ‘D:\music21files…’”后面的部分会有所不同。它会显示你安装了music21的位置(如果你忘记了music21的安装位置,这是一种简单的方式来找到它)。

只要以 "note" note.pyc 或类似的形式结尾,就没问题。

如果你想知道 note.py 模块还包含什么,除了音符和休止符对象之外,你可以输入“ note ”来查看:

dir(note)

dir(note)

该列表中的一些内容是音符的类 - 它们是大写的。其他的类是我们稍后会介绍的,比如 [

 ['GeneralNote',
  'Lyric',
  'LyricException',
  'NotRest',
  'NotRestException',
  'Note',
  'NoteException',
  'Rest',
  'SYLLABIC_CHOICES',
  'Unpitched',
  'noteheadTypeNames',
  'stemDirectionNames']

](asserts/usersGuide_02_notes/e1ccf686fa58ce87a5faecb230eb7d93.html “music21.note.Lyric”) 对象。

(顺便说一下:我会用高亮显示大多数对象的名称,以便它们成为对象的完整文档的链接。你可以在你感到好奇、沮丧或Netflix不可用时阅读它们;你现在当然不需要点击它们)。

高级插曲:

如果你更像一个Python大师,又担心“污染你的命名空间”,而不是输入“ Lyric ”,你可以输入:

from music21 import *

在这种情况下,你需要使用 note 替代

import music21

这个词。

music21.note

如果你是一个Python大师,你早就知道了。如果你之前不知道,但听说过“污染你的命名空间”,那你一定有一个Python大师朋友曾经大喊过,“永远不要使用

>>> music21.note 
<module 'music21.note' from 'D:\music21files\music21\note.pyc'>

!”相信我,现在先忽略你的朋友一会儿;在本教程结束时,你将了解到足够的知识,能够按照你认为最自然的建议进行操作。

(从Python插曲和特别插曲中回来):

好了,现在你已经了解了关于模块和对象的足够

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

qq_31339083

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值