Je travaille sur une application de musique 'en Python et je voudrais utiliser le module fractions pour gérer les signatures temporelles entre autres choses. Mon problème est que les fractions se simplifiée, à savoir:Python: éviter la simplification de la fraction
>>> from fractions import Fraction
>>> x = Fraction(4, 4)
>>> x
Fraction(1, 1)
Cependant, il est important d'un point de vue musical que 4/4 4/4 séjours même si elle est égale à 1. Est-il possible intégré pour éviter ce comportement?
Merci!
Pas de problème, je pensais que ce était mieux de demander avant de réinventer la roue. Et en effet, ils ne sont pas des fractions, mais il aurait simplifié les choses pour les traiter comme tels dans d'autres parties de l'application. –
Ne même pas inventer une classe pour cela. Utilisez un 'namedtuple'. –
En fait, je le ferais ... mais c'est une question de théorie musicale. Ce n'est pas seulement une paire de chiffres, il y a des opérations raisonnables que vous pourriez vouloir faire sur une signature de temps; ajoutez ou enlevez des battements en prenant par exemple 3/4 à 4/4, faites un 3 contre 2 en prenant 4/4 à 12/8, divisez la barre en prenant 5/4 à 3/4 et 2/4, et plusieurs autres. Il est logique d'avoir des méthodes pour ceux-ci. –