Galileo Computing < openbook > Galileo Computing - Professionelle Bücher. Auch für Einsteiger.

...powered by haas.homelinux.net...

Inhaltsverzeichnis
1 Einleitung
2 Überblick über Python
3 Die Arbeit mit Python
4 Der interaktive Modus
5 Grundlegendes zu Python-Programmen
6 Kontrollstrukturen
7 Das Laufzeitmodell
8 Basisdatentypen
9 Benutzerinteraktion und Dateizugriff
10 Funktionen
11 Modularisierung
12 Objektorientierung
13 Weitere Spracheigenschaften
14 Mathematik
15 Strings
16 Datum und Zeit
17 Schnittstelle zum Betriebssystem
18 Parallele Programmierung
19 Datenspeicherung
20 Netzwerkkommunikation
21 Debugging
22 Distribution von Python-Projekten
23 Optimierung
24 Grafische Benutzeroberflächen
25 Python als serverseitige Programmiersprache im WWW mit Django
26 Anbindung an andere Programmiersprachen
27 Insiderwissen
28 Zukunft von Python
A Anhang
Stichwort

Download:
- ZIP, ca. 4,8 MB
Buch bestellen
Ihre Meinung?

Spacer
 <<   zurück
Python von Peter Kaiser, Johannes Ernesti
Das umfassende Handbuch - Aktuell zu Python 2.5
Buch: Python

Python
gebunden, mit CD
819 S., 39,90 Euro
Galileo Computing
ISBN 978-3-8362-1110-9
Pfeil 14 Mathematik
  Pfeil 14.1 Mathematische Funktionen – math, cmath
  Pfeil 14.2 Zufallszahlengenerator – random
  Pfeil 14.3 Präzise Dezimalzahlen – decimal
    Pfeil 14.3.1 Verwendung des Datentyps
    Pfeil 14.3.2 Nichtnumerische Werte
    Pfeil 14.3.3 Das Context-Objekt

»Jede mathematische Formel in einem Buch halbiert die Verkaufszahlen dieses Buches« – Stephen Hawking

14 Mathematik

Herzlich willkommen zum dritten Teil dieses Buches. Hier möchten wir uns intensiv mit der Standardbibliothek von Python auseinandersetzen und alle wichtigen Module besprechen. Außerdem werden wir die eine oder andere Drittanbieterbibliothek behandeln. Wir beginnen mit den Modulen der Standardbibliothek, mit deren Hilfe sich im weitesten Sinne mathematische Berechnungen durchführen lassen.


Galileo Computing - Zum Seitenanfang

14.1 Mathematische Funktionen – math, cmath  topZur vorigen Überschrift

Das Modul math ist Teil der Standardbibliothek und stellt mathematische Funktionen und Konstanten bereit. Beachten Sie, dass math den komplexen Zahlenraum – und damit den Datentyp complex – vollständig ignoriert. Das heißt vor allem, dass eine in math enthaltene Funktion niemals einen komplexen Parameter akzeptiert oder ein komplexes Ergebnis zurückgibt. So wird die Berechnung der Quadratwurzel von -1 unter Verwendung der Bibliothek math beispielsweise stets eine Exception werfen.

Sollte ein komplexes Ergebnis ausdrücklich gewünscht sein, so kann anstelle von math das Modul cmath verwendet werden, in dem die Funktionen von math enthalten sind, die eine sinnvolle Erweiterung auf den komplexen Zahlen haben.

Im Folgenden werden alle Funktionen von math aufgelistet und besprochen. Sollte ein Äquivalent in cmath existieren, finden Sie eine entsprechende Anmerkung vor.

Bevor Sie die nachfolgenden Beispiele im interaktiven Modus verwenden können, müssen Sie das Modul math einbinden:

>>> import math

Mathematische Konstanten

math.pi

Die Kreiszahl Pi ( π ).

>>> math.pi 
3.1415926535897931

Die Konstante ist auch in cmath vorhanden.

math.e

Die Eulersche Zahl e.

>>> math.e 
2.7182818284590451

Die Konstante ist auch in cmath vorhanden.

Zahlentheoretische Funktionen

math.ceil(x)

Die Funktion ceil (für engl. ceiling, dt. Zimmerdecke) gibt die kleinste ganze Zahl zurück, die größer oder gleich x ist. Der Parameter x muss eine Instanz eines numerischen Datentyps sein. Der Rückgabewert ist eine Gleitkommazahl.

>>> math.ceil(3.5) 
4.0 
>>> math.ceil(2) 
2.0
math.fabs(x)

Gibt den Betrag von x zurück. Im Gegensatz zur Built-in Function abs ist der Rückgabewert von fabs immer eine Gleitkommazahl.

>>> math.fabs(-7) 
7.0 
>>> math.fabs(-7.5) 
7.5
math.floor(x)

Die Funktion floor (dt. Fußboden) gibt die größte ganze Zahl zurück, die kleiner oder gleich x ist. Die Funktion ist damit das Gegenstück zu ceil. Das Ergebnis wird immer als Gleitkommazahl zurückgegeben.

>>> math.floor(1.9) 
1.0 
>>> math.floor(-2.3) 
-3.0
math.fmod(x, y)

Berechnet x Modulo y. Beachten Sie, dass diese Funktion nicht immer dasselbe Ergebnis berechnet wie x % y. So gibt fmod das Ergebnis beispielsweise mit dem Vorzeichen von x zurück, während x%y das Ergebnis mit dem Vorzeichen von y zurückgibt. Generell gilt, dass fmod bei Modulo-Operationen mit Gleitkommazahlen und der Modulo-Operator % bei Operationen mit ganzen Zahlen bevorzugt werden sollte.

>>> math.fmod(7.5, 3.5) 
0.5
math.frexp(x)

Extrahiert Mantisse und Exponent der übergebenen Zahl x. Das Ergebnis ist ein Tupel der Form (m, e), wobei m für die Mantisse und e für den Exponenten steht. Mantisse und Exponent sind dabei im Kontext der Formel

x = m · 2

zu sehen.

>>> math.frexp(2.5) 
(0.625, 2) 
>>> math.frexp(-7.0e12) 
(-0.79580786405131221, 43)
math.ldexp(m, e)

Diese Funktion ist das Gegenstück zu frexp. Sie berechnet m · 2 und gibt das Ergebnis als Gleitkommazahl zurück.

>>> math.ldexp(0.625, 2) 
2.5
math.modf(x)

Gibt den Nachkomma- und den Vorkommaanteil von x als Gleitkommazahlen in einem Tupel zurück.

>>> math.modf(10.5) 
(0.5, 10.0)

Exponential- und Logarithmusfunktionen

math.exp(x)

Berechnet e, wobei e für die Eulersche Zahl steht. Das Ergebnis ist immer eine Gleitkommazahl.

>>> math.exp(1.0) 
2.7182818284590451 
>>> math.exp(10) 
22026.465794806718

Die Funktion ist auch in cmath vorhanden.

math.log(x[, base])

Berechnet den Logarithmus von x zur Basis base. Wenn base nicht angegeben wurde, wird der Logarithmus Naturalis, also der Logarithmus zur Basis e berechnet.

>>> math.log(1) 
0.0 
>>> math.log(32, 2) 
5.0

Die Funktion ist auch in cmath vorhanden.

math.log10(x)

Berechnet den dekadischen Logarithmus von x, also den Logarithmus von x zur Basis 10. Der Aufruf dieser Funktion ist damit äquivalent zu math.log(x, 10).

Die Funktion ist auch in cmath vorhanden.

math.pow(x, y)

Berechnet x. Es können für x, insbesondere aber auch für y, negative Zahlen oder Gleitkommazahlen übergeben werden. Beachten Sie dabei aber, dass x und y nicht beide negativ sein dürfen, da das Ergebnis sonst eine komplexe Zahl wäre. Diese Funktion ist äquivalent zur Built-in Function pow.

>>> pow(2, 3) 
8 
>>> pow(100, 0.5) 
10.0
math.sqrt(x)

Berechnet die Quadratwurzel von x, wobei x größer oder gleich 0 sein muss. Das Ergebnis ist immer eine Gleitkommazahl.

>>> math.sqrt(100) 
10.0

Die Funktion ist auch in cmath vorhanden.

Trigonometrische Funktionen

math.acos(x)

Berechnet den Arkuskosinus von x. Der Arkuskosinus ist die Umkehrfunktion des Kosinus. Der Parameter x muss eine Gleitkommazahl im Zahlenraum von -1 bis 1 sein. Der Rückgabewert von acos ist ebenfalls eine Gleitkommazahl und wird im Bogenmaß angegeben.

>>> math.acos(0.5) 
1.0471975511965979

Die Funktion ist auch in cmath vorhanden.

math.asin(x)

Berechnet den Arkussinus von x. Der Arkussinus ist die Umkehrfunktion des Sinus. Der Parameter x muss eine Gleitkommazahl im Zahlenraum von -1 bis 1 sein. Der Rückgabewert von asin ist ebenfalls eine Gleitkommazahl und wird im Bogenmaß angegeben.

>>> math.asin(0.5) 
0.52359877559829893

Die Funktion ist auch in cmath vorhanden.

math.atan(x)

Berechnet den Arkustangens von x. Der Arkustangens ist die Umkehrfunktion des Tangens. Der Rückgabewert von atan ist eine Gleitkommazahl, wird im Bogenmaß angegeben und liegt im Bereich von – π / 2 bis + π / 2.

>>> math.atan(0.5) 
0.46364760900080609

Die Funktion ist auch in cmath vorhanden.

math.atan2(y, x)

Berechnet atan(y / x). Im Gegensatz zur atan-Funktion können die Vorzeichen der Parameter x und y beachtet und somit der Quadrant des Ergebnisses berechnet werden. Mithilfe der Funktion atan2 lassen sich beispielsweise kartesische Koordinaten in Polarkoordinaten umrechnen.

>>> math.atan2(1, 1) 
0.78539816339744828 
>>> math.atan2(-1, -1) 
-2.3561944901923448
math.cos(x)

Berechnet den Kosinus von x. Der Parameter x muss im Bogenmaß angegeben werden.

>>> math.cos(math.pi) 
-1.0

Die Funktion ist auch in cmath vorhanden.

math.hypot(x, y)

Berechnet die Euklidische Norm des Vektors (x,y). Die Euklidische Norm eines Vektors entspricht der Länge des Vektors und ist definiert als:

Der Funktionsname hypot kommt daher, dass das Ergebnis der Berechnung gleichbedeutend ist mit der Länge der Hypotenuse eines rechtwinkligen Dreiecks mit den Kathetenlängen x und y.

>>> math.hypot(5, 7) 
8.6023252670426267
math.sin(x)

Berechnet den Sinus von x. Der Parameter x muss im Bogenmaß angegeben werden.

>>> math.sin(math.pi/2) 
1.0

Die Funktion ist auch in cmath vorhanden.

math.tan(x)

Berechnet den Tangens von x. Der Parameter x muss im Bogenmaß angegeben werden.

>>> math.sin(math.pi/2) 
1.0

Die Funktion ist auch in cmath vorhanden.

Winkelfunktionen

math.degrees(x)

Rechnet den Winkel x vom Bogenmaß in Grad um. Das Ergebnis ist immer eine Gleitkommazahl und wird nach der Formal 360 x / 2 π berechnet.

>>> math.degrees(math.pi/2) 
90.0
math.radians(x)

Rechnet den Winkel x von Grad ins Bogenmaß um. Das Ergebnis ist immer eine Gleitkommazahl und wird nach der Formel 2 π · x / 360 berechnet.

>>> math.radians(180.0) 
3.1415926535897931

Hyperbolische Funktionen

math.cosh(x)

Berechnet den Kosinus Hyperbolicus von x. Das Ergebnis ist eine Gleitkommazahl.

>>> math.cosh(1.0) 
1.5430806348152437

Die Funktion ist auch in cmath vorhanden.

math.sinh(x)

Berechnet den Sinus Hyperbolicus von x. Das Ergebnis ist eine Gleitkommazahl.

>>> math.sinh(1.0) 
1.1752011936438014

Die Funktion ist auch in cmath vorhanden.

math.tanh(x)

Berechnet den Tangens Hyperbolicus von x. Das Ergebnis ist eine Gleitkommazahl.

>>> math.tanh(1.0) 
0.76159415595576485

Die Funktion ist auch in cmath vorhanden.



Ihr Kommentar

Wie hat Ihnen das <openbook> gefallen? Wir freuen uns immer über Ihre freundlichen und kritischen Rückmeldungen.






 <<   zurück
  
  Zum Katalog
Zum Katalog: Python






Python
bestellen
 Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen?
Ihre Meinung

 Buchtipps
Zum Katalog: Linux






 Linux


Zum Katalog: Ubuntu GNU/Linux






 Ubuntu GNU/Linux


Zum Katalog: Praxisbuch Web 2.0






 Praxisbuch Web 2.0


Zum Katalog: UML 2.0






 UML 2.0


Zum Katalog: Praxisbuch Objektorientierung






 Praxisbuch Objektorientierung


Zum Katalog: Einstieg in SQL






 Einstieg in SQL


Zum Katalog: IT-Handbuch für Fachinformatiker






 IT-Handbuch für Fachinformatiker


 Shopping
Versandkostenfrei bestellen in Deutschland und Österreich
InfoInfo