/ / Python Division Viele Dezimalstellen - Python, Python-3.x, Mathematik, Dezimalzahl, Division

Python-Division Viele Dezimalstellen - Python, Python-3.x, Mathematik, Dezimal, Division

Hallo, ich frage mich, wie man Python dazu bringt, eine Antwort auf viel mehr Dezimalstellen als den Standardwert auszugeben.

Zum Beispiel: Derzeit werden (1/7) Ausgaben gedruckt: 0.14285714285

Ich möchte ausgeben können: 0.142857142857142857142857142857142857142857142857

Antworten:

1 für die Antwort № 1

Wenn Sie eine völlig willkürliche Genauigkeit wünschen (die Sie ziemlich genau benötigen, um diese Genauigkeit zu erreichen), empfehle ich Ihnen die mpmath Modul.

>>> from mpmath import mp
>>> mp.dps = 100
>>> mp.fdiv(1.0,7.0)
mpf("0.1428571428571428571428571428571428571428571428571428571428571428571428571428571428571428571428571428579")

Ich denke, wenn Sie nur sehr einfache Arithmetik machen wollen, das eingebaute decimal Modul wird ausreichen. Ich würde es trotzdem weiterempfehlen mpmath für alles komplexere. Sie könnten so etwas versuchen:

>>> import decimal
>>> decimal.setcontext(decimal.Context(prec=100))
>>> decimal.Decimal(1.0) / decimal.Decimal(7.0)
Decimal("0.1428571428571428571428571428571428571428571428571428571428571428571428571428571428571428571428571429")

0 für die Antwort № 2

Sie müssen das verwenden decimal Modul: https://docs.python.org/3.5/library/decimal.html

>>> from decimal import Decimal
>>> Decimal(1) / Decimal(7)
Decimal("0.1428571428571428571428571429")