Dezimalzahl in Bruch umwandeln...

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Amsel
User
Beiträge: 1
Registriert: Mittwoch 26. September 2012, 09:09

Ist es möglich, vermittels einer Vordefinierten Funktion in Python eine Dezimalzahl in einen Buch zu verwandeln?

Also im Sinne von die_Funktion(0.5) -> 1/2 ?

Ich habe hier im Forum nach "Bruch" geschaut und war auch im Pythonwiki, im Netz habe ich auch nix gefunden, weshalb ich dachte, ich frage mal hier.
OldBoy
User
Beiträge: 41
Registriert: Samstag 12. Januar 2008, 20:39

Batteries included :

Code: Alles auswählen

x = 0.5
print x.as_integer_ratio()
BlackJack

Wobei man vorsichtig sein muss, beziehungsweise um die Besonderheiten von der internen Gleitkommazahlendarstellung die üblicherweise bei Rechnern verwendet wird:

Code: Alles auswählen

In [64]: 0.5 .as_integer_ratio()
Out[64]: (1, 2)

In [65]: 0.1 .as_integer_ratio()
Out[65]: (3602879701896397L, 36028797018963968L)
Das ist vielleicht nicht das Ergebnis was man naiverweise erwarten könnte. :-)

Bruch heisst auf Englisch übrigens „Fraction” und mit dem Begriff sollte man recht schnell auf das `fractions`-Modul in der Standardbibliothek stossen.
Antworten