[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