ganze Zahl in Gleitkommazahl umrechnen

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
stsemant
User
Beiträge: 31
Registriert: Sonntag 24. Dezember 2017, 13:06

Sehr geehrtes Forum,

besteht in Python die Möglichkeit eine ganze Zahl in eine Gleitkommazahl umzurechnen?
Ich meine dabei nicht das einfache Umwandeln des Datentyp's.
z.B. 32bit unsigned int = 123456 --> 32bit float = 1,72999E-40
Benutzeravatar
noisefloor
User
Beiträge: 3854
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: WW
Kontaktdaten:

Hallo,

was meinst du mit "umrechnen", nicht umwandeln?

Und dein Beispiel verstehe ich auch auch nicht... wie soll aus 12345 1.72999E-40 werden?

Gruß, noisefloor
narpfel
User
Beiträge: 645
Registriert: Freitag 20. Oktober 2017, 16:10

Moin,

das geht mit dem `struct`-Modul aus der Standardbibliothek.
stsemant
User
Beiträge: 31
Registriert: Sonntag 24. Dezember 2017, 13:06

narpfel hat geschrieben:Moin,

das geht mit dem `struct`-Modul aus der Standardbibliothek.
Vielen Dank, so etwas habe ich gemeint!!!

Entschuldige bitte @noisefloor , ich habe mich wahrscheinlich sehr unglücklich ausgedrückt...
...mit struct können strukturierte binäre Daten verarbeitet werden
stsemant
User
Beiträge: 31
Registriert: Sonntag 24. Dezember 2017, 13:06

import struct

i = 1075838976
a = struct.pack("i", i)
f = struct.unpack("f", a)[0]
print f # 2.5
stsemant
User
Beiträge: 31
Registriert: Sonntag 24. Dezember 2017, 13:06

für die Nachwelt im link die format characters (7.1.2.2)...
https://docs.python.org/3/library/struct.html
Antworten