Python math.isclose()-Methode

Python math 模块Python math-Modul

Python math.isclose()Die Methode wird verwendet, um zu prüfen, ob zwei Werte nahe beieinanderliegen. Sie gibt True zurück, wenn die Werte nahe beieinanderliegen, andernfalls gibt sie False zurück.

math.isclose()Bestimmt, ob zwei Werte gemäß den angegebenen absoluten und relativen Toleranzen als nahe beieinanderliegend angesehen werden.

Python-Version: 3.5

Die Berechnungsformel lautet:

abs(a-b) <= max(rel_tol * max(abs(a), abs(b)), abs_tol)

Syntax

Die Syntax der Methode math.isclose() lautet wie folgt:

math.isclose(a, b, *, rel_tol=1e-09, abs_tol=0.0)

Parameter description:

  • a-- Erforderlich, eine Zahl. Wenn x keine Zahl ist, wird TypeError zurückgegeben. Wenn der Wert 0 oder negativ ist, wird ValueError zurückgegeben.
  • b-- Erforderlich, eine Zahl. Wenn x keine Zahl ist, wird TypeError zurückgegeben. Wenn der Wert 0 oder negativ ist, wird ValueError zurückgegeben.
  • rel_tol-- Die relative Toleranz. Sie ist die maximal zulässige Differenz zwischen a und b, relativ zum größeren absoluten Wert von a oder b. Um beispielsweise eine Toleranz von 5% festzulegen, übergeben Sie rel_tol=0.05. Die Standardtoleranz ist 1e-09, wodurch sichergestellt wird, dass die beiden Werte innerhalb von etwa 9 Dezimalstellen gleich sind. rel_tol muss größer als null sein.
  • abs_tol-- Die minimale absolute Toleranz, nützlich für Vergleiche nahe null. abs_tol muss mindestens null sein.

Rückgabewert

Gibt einen booleschen Wert zurück und prüft, ob zwei Werte nahe beieinanderliegen. Wenn die Werte nahe beieinanderliegen, wird True zurückgegeben; andernfalls wird False zurückgegeben.

Beispiel

Das folgende Beispiel prüft, ob zwei Werte nahe beieinanderliegen:

Beispiel

# Importiere das math-Paket
import math

# Ausgabe, ob die beiden Werte nahe beieinanderliegen
print(math.isclose(8.005, 8.450, abs_tol = 0.4))
print(math.isclose(8.005, 8.450, abs_tol = 0.5))

Ausgabeergebnis:

False
True

Das folgende Beispiel prüft, ob zwei Gleitkommazahlen nahe beieinanderliegen:

Beispiel

# Importiere das math-Paket
import math

# Kann für den Vergleich von Gleitkommazahlen verwendet werden

# Dies gibt false aus; 0.1+0.2 ist nicht gleich 0.3
print(0.1+0.2 == 0.3)
print(0.1+0.2 )

# Dies gibt true aus
print(math.isclose(0.1+0.2, 0.3))

Ausgabeergebnis:

False
0.30000000000000004
True

Python math 模块Python math-Modul

Andere Erweiterungen