



Next: 2.2 Strings
Up: 2. Datenobjekte
Previous: 2. Datenobjekte
Contents
Index
2.1 Zahlen
Dies sind die kleinsten Objekte, die es gibt. Man unterscheidet ganzzahlige
Zahlobjekte (Integer), Gleitkommazahlen (Floats),
sowie die Ihnen sicherlich nicht in jedem Fall bekannten »komplexen
Zahlen« (Complex2.1). Das Einzige, was Sie beachten müssen ist, dass eine Zahl um so
mehr Speicherplatz im Arbeitsspeicher benötigt, je komplizierter sie
aufgebaut ist. In diesem Sinne sind Ganzzahlobjekte die kleinsten.
Probieren Sie einmal der Reihe nach aus:
-
- >>>2+3
>>>2*3
>>>2+3.0
>>>3.0/2
>>>3/2
>>>3.0/2.0
>>>8%2
>>>7%2
>>>4**2
>>>j*j
>>>(1-j)*2
>>>(1+j)*j
Wie Sie sehen, kann der Interpreter als »Taschenrechner« arbeiten.
Die letzten beiden Fälle beziehen sich auf komplexe Zahlen, wobei
die sogenannte »imaginäre Einheit« das j bedeutet2.2. Die Zahl »j ist so etwas wie«
, wobei diese Schreibweise
mit grösster Vorsicht zu geniessen ist. Die Zahl
hat die Eigenschaft
. Sie hat auch eine anschauliche Bedeutung, aber ich
will nicht wortbrüchig werden und nun doch komplexe Zahlen genauer
erklären.
Was die Informatik betrifft, leisten die Zeichen
wesentlich mehr als nur die Ausführung einer Rechenoperation. Diese
Zeichen, die aus diesem Grunde auch Operatoren
heissen, generieren aus zwei Zahlenobjekten ein drittes, das Ihnen
als »Ergebnis« angezeigt wird. Nach der Abarbeitung der Anweisung
2*3 sind sowohl die »2« als auch die »3« und das Ergebnis
»6« als Objekte verloren. Man kann auf sie nicht mehr zugreifen.
Wozu auch? Nun, soll mit dem Ergebnis weitergerechnet werden, ist
die Anbindung an einen Namen notwendig.
-
- >>>Ergebnis=2*3
>>>10**Ergebnis
zeigt, dass jetzt der Name Ergebnis auf das Ergebnisobjekt
der Operation »2*3« zeigt. Das Beispiel ist hinreichend dämlich.
Daher gehen wir möglichst schnell zu einem etwas interessanteren Datenobjekt
gleich über. Bevor wir dieses tun nur noch ein Hinweis. Probieren
Sie aus:
-
- >>>2/10E-10
>>>2/0.0000000001
Sie sehen ein paar kleine Überraschungen.
bedeutet natürlich
. Sie sehen, dass bei derart grossen Zahlen die Rechengenauigkeit
keine Begeisterungswelle auslöst. Tatsächlich ist Python als Taschenrechner
mit Gleitkommazahlen zunächst nur für kleinere Rechnungen sehr gut
zu gebrauchen. Es gibt ein separates Modul oder sogar eine mathematische
Erweiterung von Python, die jeden Wunsch erfüllt. Wir wollen uns hier
noch nicht damit abgeben. Sie sehen, dass die zweite Rechnung genauer
ist.
Sehr merkwürdig ist aber, dass
-
- >>>2*10000000000
am Ende ein »L« an die Zahl gehängt wird. Dies ist ein sehr grosser
Vorteil gegenüber vielen anderen Sprachen. Python kennt beliebig grosse
Ganzzahlobjekte! Normalerweise gibt es je nach Art der Abspeicherung
eine untere und obere Grenze (siehe Anhang). Durch Anhängen eines
»L« wird diese Beschränkung aufgehoben. Rechnen Sie daher möglichst
immer mit Integerzahlen. Notfalls hängen Sie ein L an das Ende.
Natürlich dauert die Rechnung dann etwas länger, da Long-Integer sehr
viel mehr Speicherplatz benötigen. Aber es ist immer noch im allgemeinen
besser als das Rechnen mit Gleitkommazahlen.
Wenn wir wieder an unser Apfelsaftglas denken, so ähnelt dieser sehr
elementare Datentyp sehr viel weniger diesem Glas als vielmehr dem
Apfelsaft selbst. Kommen wir nun also zu den Apfelsaftgläsern.




Next: 2.2 Strings
Up: 2. Datenobjekte
Previous: 2. Datenobjekte
Contents
Index
Heiko Schroeder
2003-03-19