Escalas
Módulo das escalas musicais.
Attributes:
| Name | Type | Description |
|---|---|---|
ESCALAS |
Escalas implementadas usando a notação de inteiros |
|
NOTAS |
Notas musicais |
ESCALAS
As escalas estão implementadas em uma constante chamada ESCALAS. Que é um dicionário onde as chaves são os nomes das escalas. Se quiser ver todas as escalas implementadas pode usar:
>>> from notas_musicais.escalas import ESCALAS
>>> ESCALAS
{'maior': (0, 2, 4, 5, 7, 9, 11), 'menor': (0, 2, 3, 5, 7, 8, 10)...}
A notação inteira para as escalas foi retirada da página List of musical scales and modes na wikipedia.
Dica!
Você pode contribuir com novas escalas usando a notação inteira:
Escalas wikipedia.
Todos os Pull Requests serão bem vindos!
NOTAS
As notas estão sendo definidas em uma constante NOTAS. Foi optado por menter somente as notas no formato Natural e o Sustenido (#) para a simplificação do fluxo de trabalho. Embora não esteja totalmente correto. Para ver as 12 notas você pode:
>>> from notas_musicais.escalas import NOTAS
>>> NOTAS
['C', 'C#', 'D', 'D#', 'E', 'F', 'F#', 'G', 'G#', 'A', 'A#', 'B']
escala(tonica, tonalidade)
Gera uma escala apartir de uma tônica e uma tonalidade.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
tonica |
str
|
Nota que será a tônica da escala |
required |
tonalidade |
str
|
Tonialidade da escala |
required |
Returns:
| Type | Description |
|---|---|
dict[str, list[str]]
|
Um dicionário com as notas da escala e os graus. |
Raises:
| Type | Description |
|---|---|
ValueError
|
Caso a tônica não seja uma nota valida. |
KeyError
|
Caso a escala não exista ou não tenha sido implementada. |
Examples:
>>> escala('C', 'maior')
{'notas': ['C', 'D', 'E', 'F', 'G', 'A', 'B'], 'graus': ['I', 'II', 'III', 'IV', 'V', 'VI', 'VII']}
>>> escala('a', 'menor')
{'notas': ['A', 'B', 'C', 'D', 'E', 'F', 'G'], 'graus': ['I', 'II', 'III', 'IV', 'V', 'VI', 'VII']}
Source code in notas_musicais/escalas.py
41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 | |