[Python-de] Bruchzahlen
Andreas Jung
lists at andreas-jung.com
Mon Jun 28 19:53:07 CEST 2004
--On Montag, 28. Juni 2004 19:46 Uhr +0200 "\"Sebastian \\\"Marduk\\\"
Pölsterl\"" <marduk at k-d-w.org> wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Hallo!
>
> Ich bin gerade auf eine recht sonderbare eigenart gestoßen.
>
> <code>
> zahl = 5/32
> zahl2 = float(5/32)
> zahl3 = 6/3
>
> print zahl
> print zahl2
> print zahl3
> </code>
> Ersteres gibt '0' zurück, zweiteres '0.0', und da dritte wie erwartet '2'
>
> Jetzt versteh ich überhaupt nicht, wieso die ersten beiden Zahlen 0
> ergeben.
Weil '/' auf zwei Ints eine Ganzzahldivision ist. 5/32.0 ist hingegen eine
Fliesskommadivision. In 2.4 glaube ihc wird '/' immer per Default
eine Floatingpointdivision sein.
-aj