Heim Backend-Entwicklung Python-Tutorial Wie viele Bytes belegt die Gleitkommazahl von Python?

Wie viele Bytes belegt die Gleitkommazahl von Python?

Jun 12, 2019 am 11:24 AM
python

Gleitkommazahlen werden mit der nativen doppelten Genauigkeit (64 Bit) der Gleitkommazahl auf der Maschine dargestellt. Bietet eine Genauigkeit von ca. 17 Stellen und einen Exponenten im Bereich von -308 bis 308. Es ist dasselbe wie der Double-Typ in der C-Sprache. Python unterstützt keine 32-Bit-Gleitkommazahlen mit einfacher Genauigkeit. Wenn Ihr Programm eine präzise Kontrolle über Intervalle und numerische Genauigkeit erfordert, sollten Sie die Verwendung der Numpy-Erweiterungsbibliothek in Betracht ziehen.

Python 3.X bietet standardmäßig eine Genauigkeit von 17 Stellen für Gleitkommazahlen.

Wie viele Bytes belegt die Gleitkommazahl von Python?

Beliebte Erklärung zu einfacher und doppelter Präzision:

Einfache und doppelte Präzision, ihr Typ Der Spezifizierer ist ein Float-Spezifizierer mit einfacher Genauigkeit und ein Double-Spezifizierer mit doppelter Genauigkeit. In Turbo C belegt der Typ mit einfacher Genauigkeit 4 Byte (32 Bit) Speicherplatz, sein Wertebereich liegt zwischen 3,4E-38 und 3,4E+38 und kann nur sieben signifikante Ziffern bereitstellen. Der Typ mit doppelter Genauigkeit belegt 8 Byte (64 Bit) Speicherplatz, sein Wertebereich liegt zwischen 1,7E-308 und 1,7E+308 und kann 16 signifikante Ziffern bereitstellen.

Erfordert eine Präzisionsanalyse mit mehr als 17 Stellen

Python verwendet standardmäßig eine Genauigkeit von 17 Dezimalstellen, aber hier gibt es ein Problem , wenn wir Was tun, wenn die Berechnung eine höhere Genauigkeit erfordert (mehr als 17 Dezimalstellen)?

1. Formatierung verwenden (nicht empfohlen)

>>> a = "%.30f" % (1/3)
>>> a
'0.333333333333333314829616256247'
Nach dem Login kopieren

kann angezeigt werden, ist aber nicht korrekt und die folgenden Zahlen sind oft bedeutungslos.

2. Verwenden Sie das Dezimalmodul mit hoher Präzision und kooperieren Sie mit getcontext

>>> from decimal import *
>>> print(getcontext())
Context(prec=28, rounding=ROUND_HALF_EVEN, Emin=-999999, Emax=999999, capitals=1, clamp=0, flags=[], traps=[InvalidOperation, DivisionByZero, Overflow])
>>> getcontext().prec = 50
>>> b = Decimal(1)/Decimal(3)
>>> b
Decimal('0.33333333333333333333333333333333333333333333333333')
>>> c = Decimal(1)/Decimal(17)
>>> c
Decimal('0.058823529411764705882352941176470588235294117647059')
>>> float(c)
0.058823529411764705
Nach dem Login kopieren

Die Standardkontextgenauigkeit beträgt 28 Bit, die auf 50 Bit oder sogar höher eingestellt werden kann . Auf diese Weise können Sie bei der Analyse komplexer Gleitkommazahlen eine höhere kontrollierbare Präzision erzielen. Tatsächlich können Sie im Kontext auf den Parameter „rounding=ROUND_HALF_EVEN“ achten. ROUND_HALF_EVEN, wenn halb, nahezu gerade.

Das obige ist der detaillierte Inhalt vonWie viele Bytes belegt die Gleitkommazahl von Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Kann der Python -Dolmetscher im Linux -System gelöscht werden? Kann der Python -Dolmetscher im Linux -System gelöscht werden? Apr 02, 2025 am 07:00 AM

In Bezug auf das Problem der Entfernung des Python -Dolmetschers, das mit Linux -Systemen ausgestattet ist, werden viele Linux -Verteilungen den Python -Dolmetscher bei der Installation vorinstallieren, und verwendet den Paketmanager nicht ...

Wie löst ich das Problem der Erkennung von kundenspezifischen Dekoratoren in Python? Wie löst ich das Problem der Erkennung von kundenspezifischen Dekoratoren in Python? Apr 02, 2025 am 06:42 AM

Lösung für die Erkennung von Pylanztypen bei der Verwendung des benutzerdefinierten Dekorators in der Python -Programmierung ist Decorator ein leistungsstarkes Werkzeug, mit dem Zeilen hinzugefügt werden können ...

Python 3.6 Laden Sie Giftedatei Fehler ModulenotFoundError: Was soll ich tun, wenn ich die Gurkendatei '__builtin__' lade? Python 3.6 Laden Sie Giftedatei Fehler ModulenotFoundError: Was soll ich tun, wenn ich die Gurkendatei '__builtin__' lade? Apr 02, 2025 am 06:27 AM

Laden Sie die Gurkendatei in Python 3.6 Umgebungsfehler: ModulenotFoundError: Nomodulenamed ...

Wie löste ich Berechtigungsprobleme bei der Verwendung von Python -Verssionsbefehl im Linux Terminal? Wie löste ich Berechtigungsprobleme bei der Verwendung von Python -Verssionsbefehl im Linux Terminal? Apr 02, 2025 am 06:36 AM

Verwenden Sie Python im Linux -Terminal ...

Teilen Fastapi und AIOHTTP dieselbe globale Ereignisschleife? Teilen Fastapi und AIOHTTP dieselbe globale Ereignisschleife? Apr 02, 2025 am 06:12 AM

Kompatibilitätsprobleme zwischen asynchronen Python -Bibliotheken in Python, asynchrones Programmieren ist zum Prozess der hohen Parallelität und der I/O geworden ...

Wie kann ich sicherstellen, dass der Kinderprozess auch endet, nachdem er den übergeordneten Prozess über Signal in Python getötet hat? Wie kann ich sicherstellen, dass der Kinderprozess auch endet, nachdem er den übergeordneten Prozess über Signal in Python getötet hat? Apr 02, 2025 am 06:39 AM

Das Problem und die Lösung des Kinderprozesses werden weiterhin ausgeführt, wenn Signale zum Töten des übergeordneten Prozesses verwendet werden. In der Python -Programmierung, nachdem er den übergeordneten Prozess durch Signale getötet hatte, ist der Kinderprozess immer noch ...

Was soll ich tun, wenn das Modul '__builtin__' beim Laden der Gurkendatei in Python 3.6 nicht gefunden wird? Was soll ich tun, wenn das Modul '__builtin__' beim Laden der Gurkendatei in Python 3.6 nicht gefunden wird? Apr 02, 2025 am 07:12 AM

Laden Sie Gurkendateien in Python 3.6 Umgebungsbericht Fehler: ModulenotFoundError: Nomodulennamen ...

See all articles