Название: Routineaufgaben mit Python automatisieren
Автор: Al Sweigart
Издательство: Bookwire
Жанр: Математика
isbn: 9783960889571
isbn:
>>> int(7.7)
7
>>> int(7.7) + 1
8
In Ihrem ersten Programm werden die Funktionen int() und str() in den letzten drei Zeilen verwendet, um im Code Werte des passenden Datentyps bereitzustellen.
print('What is your age?') # Fragt nach dem Alter
myAge = input()
print('You will be ' + str(int(myAge) + 1) + ' in a year.')
Die Variable myAge enthält den von input() zurückgegebenen Wert. Da diese Funktion immer einen String zurückgibt (auch wenn der Benutzer eine Zahl eingegeben hat), müssen Sie den String in myAge mit int(myAge) in einen Integerwert umwandeln, damit Sie 1 addieren können, was in dem Ausdruck int(myAge) + 1 geschieht.
Das Ergebnis dieser Addition wird wiederum der Funktion str() übergeben: str(int(myAge) + 1). Der daraus resultierende Stringwert wird mit den Strings 'You will be ' und ' in a year' zu einem einzigen, langen Stringwert verkettet, der dann schließlich zur Anzeige an print() übergeben wird.
Nehmen wir an, der Benutzer gibt als Alter 4 ein. Der String '4' wird in einen Integer umgewandelt, sodass 1 addiert werden kann, was 5 ergibt. Die Funktion str() konvertiert dieses Ergebnis wieder in einen String zurück, sodass er mit dem zweiten String ' in a year' verkettet werden kann, um die endgültige Meldung zu bilden. Die Auswertung läuft wie folgt ab:
Das Verhältnis zwischen Text und Zahlen
Der Stringwert einer Zahl ist etwas völlig anderes als ihr Integer- oder Fließkommawert. Dagegen können Integer- und Fließkommawerte aber durchaus gleich sein.
>>> 42 == '42'
False
>>> 42 == 42.0
True
>>> 42.0 == 0042.000
True
Python macht diese Unterscheidung, da Strings Text darstellen, Integer- und Fließkommawerte aber Zahlen.
Zusammenfassung
Sie können arithmetische Ausdrücke mit einem Taschenrechner berechnen und Strings in einer Textverarbeitung verketten. Durch Kopieren und Einfügen können Sie sogar auf ganz einfache Weise eine Stringwiederholung erreichen. Ausdrücke, die aus Operatoren, Variablen und Funktionsaufrufen bestehen können, sind dagegen die Grundbausteine von Programmen. Wenn Sie mit diesen Elementen umgehen können, sind Sie in der Lage, Python anzuweisen, große Datenmengen für Sie zu verarbeiten.
Was Sie sich auf jeden Fall merken sollten, sind die verschiedenen Arten von Operatoren (die arithmetischen Operatoren +, -, *, /, //, % und ** sowie die Stringoperatoren + und *) und die drei in diesem Kapitel vorgestellten Datentypen (Integer, Fließkommazahlen und Strings).
Sie haben auch schon einige Funktionen kennengelernt. print() kümmert sich um die einfache Textausgabe (auf dem Bildschirm), input() um die Eingabe (von der Tastatur). Die Funktion len() nimmt einen String entgegen und wertet ihn zu einem Integer aus, der die Anzahl der Zeichen in dem String wiedergibt. Mit str(), int() und float() ermitteln Sie die String-, Integer- bzw. Fließkommaversion des übergebenen Wertes.
Im nächsten Kapitel lernen Sie, wie Sie in Python auf der Grundlage eines Wertes entscheiden, welcher Code ausgeführt, übersprungen oder wiederholt werden soll. Dies wird als Flusssteuerung bezeichnet. Damit können Sie Programme schreiben, die Entscheidungen treffen.
Wiederholungsfragen
1 Welche der folgenden Einträge sind Operatoren und welche sind Werte?*'hello'-88.8-/+5
2 Welcher der folgenden Einträge ist eine Variable und welcher ein String?spam'spam'
3 Nennen Sie drei Datentypen!
4 Woraus besteht ein Ausdruck? Was machen alle Ausdrücke?
5 In diesem Kapitel wurden Zuweisungsanweisungen wie spam = 10 vorgestellt. Was ist der Unterschied zwischen einem Ausdruck und einer Anweisung?
6 Welchen Wert enthält die Variable bacon, nachdem der folgende Code ausgeführt worden ist?bacon = 20bacon + 1
7 Wozu werden die beiden folgenden Ausdrücke ausgewertet?'spam' + 'spamspam''spam' * 3
8 Warum ist eggs ein gültiger Variablenname, 100 dagegen nicht?
9 Mit welchen drei Funktionen können Sie die Integer-, Fließkomma- oder Stringversion eines Wertes ermitteln?
10 Warum ruft der folgende Ausdruck eine Fehlermeldung hervor? Wie können Sie ihn korrigieren?'I have eaten ' + 99 + ' burritos.'
Zusatzpunkt: Suchen Sie online nach der Python-Dokumentation für die Funktion len(). Sie befindet 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
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.