Python. Der Sprachkurs für Einsteiger und Individualisten. Willemer Arnold V.
Чтение книги онлайн.
Читать онлайн книгу Python. Der Sprachkurs für Einsteiger und Individualisten - Willemer Arnold V. страница 8
Weil sowohl die Multiplikation als auch die Division höherrangig als die Addition ist, wird der rechte Teil der Formel zuerst berechnet. Da Multiplikation und Division gleichrangig sind, wird dieser Teil von links nach rechts ausgeführt. Der Computer berechnet den Wert also in den folgenden Schritten:
netto * MWSt
netto * MWSt / 100
netto + netto * MWSt / 100
brutto = netto + netto * MWSt / 100
Da die Zuweisung als Letztes durchgeführt wird, kann zu einer Berechnung auch die Variable verwendet werden, der der Ausdruck zuletzt zugewiesen wird. Dann enthält die Variable rechts vom Gleichheitszeichen den Wert, wie er vor der Zuweisung war. Immer wieder wird das benötigt, wenn eine Zahl um 1 erhöht werden soll.
zaehler = 1
zaehler = zaehler + 1
Nach Ausführung der Zeilen enthält die Variable zaehler den Wert 2.
Die letzte Zeile kann durch zaehler += 1 verkürzt werden. Allerdings ist zaehler++, wie es C oder Java verwendet, in Python nicht erlaubt.
Der Umgang mit der Sprache fällt den Menschen leichter als den Computern. Ein Wort ist aus der Sicht des Computers eine Folge von Buchstaben und wird darum als Zeichenkette oder gern auch als String bezeichnet. Das Wort String ist vor allem Programmierern sympathisch. Das mag an der Assoziation zum String-Tanga liegen. Aber mir stehen die Dinger gar nicht. Das sieht ja aus wie Presswurst.
Python codiert zur Verarbeitung von Zeichenketten jeden Buchstaben in eine Zahl und hängt diese Zahlen anschließend aneinander. Python bezeichnet eine Zeichenkette auch als eine Sequenz von Buchstaben beziehungsweise deren Codierung. Was Python intern daraus macht, soll aber erst einmal egal sein. Wir wollen einfach ein wenig damit programmieren.
Literale
Als Literal bezeichnen Programmierer einen konstanten Wert, der quasi unverpackt ins Programm geschrieben wird. Eine 4 ist beispielsweise ein Zahlenliteral.
In einem Programm werden häufiger feststehende Zeichenketten verwendet. Diese muss der Python-Interpreter natürlich von den Variablennamen unterscheiden. Dazu werden die Zeichenketten entweder durch Anführungszeichen oder durch Hochkommata eingeschlossen. Geht die Zeichenkette über mehrere Zeilen, können Sie auch drei Hochkommata oder Anführungszeichen verwenden. Das folgende Beispiel zeigt, wie die Variablen gruss, name undlyrik mit Zeichenketten gefüllt werden.
gruss = "Hallo!"
name = ’Arnold’
lyrik = """When I see a bird
that walks like a duck
and swims like a duck
and quacks like a duck,
I call that bird a duck.
(James Whitcomp Riley)"""
Listing 3.1 Zeichenkettenliterale
Die Möglichkeit, neben den Anführungszeichen auch Hochkommata verwenden zu können, ist besonders praktisch, wenn der Text selbst Anführungszeichen enthält.
lyrik = ’"Schieß doch!" waren seine letzten Worte’
Ach ja: Sie erinnern sich? Es gibt Ärger, wenn Sie unter Python 2 Umlaute in Zeichenketten verwenden. Was nun? Sie könnten das ß durch ss ersetzen, aber das ist leider nicht einmal durch die Rechtschreibreform abgedeckt. Sie können in der ersten oder zweiten Zeile die Codierung angeben:
# – *– coding: utf-8 – *-
Oder Sie verwenden einfach Python 3 und einen UTF-8-kompatiblen Editor.
Mit Zeichenketten kann man wundervoll herumspielen. Sie finden in Kapitel 8 noch ein paar schöne Anregungen.
So erhebend das Gefühl auch sein mag, wenn das erste eigene Programm mit Zahlen jongliert, so traurig ist es, wenn die Welt da draußen von diesen Fähigkeiten nichts erfährt. Um dem Mitteilungsbedürfnis von Programmen Raum zu geben, stellt die Sprache Python die Funktion print() zur Verfügung. Sie nimmt die auszugebenden Werte in ihre runden Klammern und schickt sie auf die Konsole.
Als Beispiel soll Ihr Programm berechnen, wie lang ein Streifen von zehn Zentimetern Breite wird, wenn Sie einen 500-Gramm-Becher Joghurt verwenden, um damit in der Fußgängerzone ein Fußballfeld zu markieren. Aus jahrelanger Erfahrung wissen Sie, dass Sie den Joghurt mindestens zwei Millimeter dick auftragen müssen.
joghurtbecher = 500
auftragsdicke = 0.2
breite = 10
laenge = joghurtbecher / breite / auftragsdicke
print(laenge)
Listing 3.2 Lösung des Joghurtbecherproblems
Dabei ist print() ein echtes Multitalent! Die Funktion gibt Zahlen, Zeichenketten oder Variablen aus, sogar mehrere hintereinander, wenn man sie per Komma trennt. Das können Sie nutzen, um dem Anwender das Ergebnis nicht einfach nur als nackte Zahl vorzuwerfen.
joghurtbecher = 500
auftragsdicke = 0.2
breite = 10
laenge = joghurtbecher / breite / auftragsdicke
print("Der Streifen ist", laenge, "cm lang")
Listing 3.3 Multiple Ausgabe
Die Ausgabe des Programms sieht so aus:
Der Streifen ist 250.0 cm lang
Damit kann man beim besten Willen kein Fußballfeld markieren. Sie müssen also noch mehr Joghurt kaufen.
Warnung
Die Ein- und Ausgabe unterscheidet sich zwischen Python 2 und Python 3. Wenn Sie in einem Listing ein print ohne Klammern sehen, handelt es sich definitiv um Python 2. Zunächst betrachten wir Python 3.
Wenn die Funktion print() mehrere Werte in einem Rutsch ausgibt, setzt sie immer ein Leerzeichen zwischen die Ausgabewerte. In den meisten Fällen ist das ja auch ganz praktisch. Aber wenn das Leerzeichen stört, können Sie das Trennzeichen der Funktion print() verändern, indem Sie der Parametervariablen sep eine leere Zeichenkette zuweisen.
joghurtbecher = 500
auftragsdicke = 2
breite = 10
laenge = joghurtbecher / breite / auftragsdicke
print("Der Streifen ist", laenge, "cm lang", sep="")
Listing 3.4 Multiple Ausgabe ohne Leerzeichen
Die