Routineaufgaben mit Python automatisieren. Al Sweigart

Routineaufgaben mit Python automatisieren - Al Sweigart


Скачать книгу
sich auf einer Webseite mit dem Titel »Built-in Functions«. Schauen Sie sich in der Liste weitere Funktionen von Python an, schlagen Sie nach, was die Funktion round() macht, und experimentieren Sie damit in der interaktiven Shell.

       2

       Flusssteuerung

      image Sie kennen jetzt die Grundlagen von Anweisungen und wissen, dass ein Programm nichts anderes als eine Abfolge solcher Anweisungen ist. Die wahre Stärke der Programmierung besteht aber nicht darin, einfach nur eine Anweisung nach der anderen auszuführen, etwa so, wie Sie eine Einkaufsliste abarbeiten. Je nach dem, welches Ergebnis die Auswertung eines Ausdrucks ergibt, kann das Programm entscheiden, Anweisungen zu überspringen oder zu wiederholen, oder unter mehreren möglichen Anweisungen auswählen. In der Praxis wird ein Programm so gut wie nie von der ersten bis zur letzten Anweisung einfach stur Zeile für Zeile ausgeführt. Stattdessen wird mithilfe von Flusssteuerungsanweisungen entschieden, welche Anweisungen unter welchen Bedingungen auszuführen sind.

      Da diese Flusssteuerungsanweisungen unmittelbar den Symbolen in einem Flussdiagramm entsprechen, zeige ich Ihnen in diesem Kapitel auch immer das Flussdiagramm zu dem besprochenen Code. Zur Einführung enthält Abb. 2–1 das Diagramm, um zu entscheiden, was zu tun ist, wenn es regnet. Folgen Sie dem Pfad entlang der Pfeile vom Anfang bis zum Ende.

      Abb. 2–1Ein Flussdiagramm, das Ihnen sagt, was Sie tun müssen, wenn es regnet.

      In einem Flussdiagramm gibt es gewöhnlich mehr als einen Weg, um vom Start zum Ende zu gelangen. Das Gleiche gilt auch für die Codezeilen in einem Computerprogramm. In Flussdiagrammen werden diese Verzweigungen durch Rauten dargestellt. Für die anderen Schritte werden Rechtecke verwendet, für Anfang und Ende abgerundete Rechtecke.

      Bevor Sie die Flusssteuerungsanweisungen kennenlernen, müssen Sie zunächst einmal wissen, wie Sie die Optionen ja und nein darstellen und wie Sie die Verzweigungspunkte als Python-Code schreiben. Dazu beschäftigen wir uns mit booleschen Werten, Vergleichsoperatoren und booleschen Operatoren.

       Boolesche Werte

      Integer, Fließkommazahlen und Strings können unendlich viele mögliche Werte annehmen, doch für den booleschen Datentyp (benannt nach dem Mathematiker George Boole) gibt es nur zwei, nämlich wahr und falsch (True und False). In Python-Code werden die booleschen Werte True und False immer ohne die Anführungszeichen für Strings und immer mit großem Anfangsbuchstaben geschrieben. Der Rest des Wortes steht jeweils in Kleinbuchstaben. Geben Sie zum Ausprobieren folgenden Code in die interaktive Shell ein (wobei einige dieser Anweisungen absichtlich nicht korrekt sind und Fehlermeldungen hervorrufen):

      >>> spam = True image

      >>> spam

      True

      >>> true image

      Traceback (most recent call last):

      File "<pyshell#2>", line 1, in <module>

      true

      NameError: name 'true' is not defined

      >>> True = 2 + 2 image

      SyntaxError: assignment to keyword

      Wie alle anderen Werte können auch boolesche Werte in Ausdrücken verwendet und in Variablen gespeichert werden (image). Wenn Sie Groß- und Kleinschreibung verwechseln (image) oder wenn Sie versuchen, True oder False als Variablennamen zu verwenden (image), gibt Python eine Fehlermeldung aus.

       Vergleichsoperatoren

      Vergleichsoperatoren vergleichen zwei Werte, wobei das Ergebnis ein einzelner boolescher Wert ist. Tabelle 2–1 führt die möglichen Vergleichsoperatoren auf.

Operator Bedeutung
== Gleich
!= Ungleich
< Kleiner als
> Größer als
<= Kleiner oder gleich
>= Größer oder gleich

       Tab. 2–1 Vergleichsoperatoren

      Je nachdem, welche Werte Sie übergeben, werden diese Operatoren zu True oder False ausgewertet. Im Folgenden wollen wir einige Operatoren ausprobieren, wobei wir mit == und != beginnen.

      >>> 42 == 42

      True

      >>> 42 == 99

      False

      >>> 2 != 3

      True

      >>> 2 != 2

      False

      Wie zu erwarten ist, wird == (gleich) zu True ausgewertet, wenn die Werte auf beiden Seiten gleich sind, != (ungleich) dagegen, wenn sie verschieden sind. Die Operatoren == und != können für Werte beliebiger Datentypen verwendet werden.

      >>> 'hello' == 'hello'

      True

      >>> 'hello' == 'Hello'

      False

      >>> 'dog' != 'cat'

      True

      >>> True == True

      True

      >>> True != False

      True

      >>> 42 == 42.0

      True

      >>> 42 == '42' image

      False

      Beachten Sie, dass Integer- und Fließkommawerte immer ungleich den Stringwerten sind. Der Ausdruck 42 == '42' (image)


Скачать книгу