Python:避免分数简化

Ant*_*rre 3 python fractions music-notation

我正在研究Python中的音乐应用程序,并希望使用分数模块来处理时间签名等.我的问题是分数得到简化,即:

>>> from fractions import Fraction
>>> x = Fraction(4, 4)
>>> x
Fraction(1, 1)
Run Code Online (Sandbox Code Playgroud)

然而,从音乐的角度来看,重要的是4/4保持4/4,即使它等于1.是否有任何内置的方法来避免这种行为?

谢谢!

And*_*gor 9

是的:为它制作一个自定义类.

音乐时间签名不是分数,因此用数学类来表示它们是没有意义的.

  • 实际上,我会...但这是音乐理论的问题.这不只是一对数字,你可能想要在时间签名上做一些合理的操作; 添加或删除节拍,比如3/4到4/4,做3对2,4/4到12/8,将条形分为5/4到3/4和2/4,以及其他各种.有这些方法是有道理的. (2认同)