In Python 2 war print ein Statement:
print "Text"
In Python 3 ist Print eine Methode:
print ("Text")
In Python 2 war raw_input für die nicht-interpretierte Eingabe von Daten zuständig (Daten wurden so in eine Variable gespeichert wie sie eingegeben wurden), während input die Eingabe als Python-Code interpretiert hat.
In Python 3 übernimmt die Funktion die vorher raw_input hatte, input.
Aus:
raw_input("Bitte eingeben")
Wird: input(„Bitte eingeben“)
In Python 2 war ein String eine Kette von Zeichen, die normalerweise als ASCII interpretiert wurde.
In Python 3 ist ein String eine UTF-8 Zeichenkette.
Methodenname | Beschreibung |
---|---|
int() | Konvertiert alles in ein Integer (Ganzzahl) |
float() | Konvertiert alles in ein Floating Point Number (Reele Zahlen, mit Komma) |
Syntax:
float(Variable)
Das ganze geht auch um komplette Ausdrücke (Das Ergebnis wird dann konvertiert → es wird zuvor der Inhalt in den Klammern ausgeführt):
a=float(5+3)
Ergibt: 8.0
Bei Rechenoperationen bei denen das Ergebnis eine Kommazahl ist wird automatisch nach Float konvertiert.
Die folgende Liste ist nicht abschließend, sie zeigt nur die Operatoren die nicht selbsterklärend sind:
Operator | Beschreibung |
---|---|
** | Hoch/Power of x a=5**2 Enstpricht 5 hoch 2. |
% | Modulu/Rest - gibt den Rest einer Division zurück
a=17 % 3 a wäre in obigem Beispiel 2. |
+ | Addition oder verketten von Strings. Hinweis: Beim Verketten von Strings müssen beide zu verkettenden Strings explizit Strings sein - es geht also nicht einfach eine Variable die eine Ziffer enthält mit einem String zu verknüpfen. Python nimmt in diesem Fall an, das es sich bei der Ziffer um eine Zahl handelt und nicht um eine Zeichenkette. |
Mathematische Ausdrücke werden nach den folgenden Regeln verarbeitet.
Neben den hier gelisteteten Operationen (unvollständige Liste) kann man natürlichalle Operatoren für sequentielle Datentypen anwenden (da Strings solche sind).
Zu beachten ist, dass Methoden die Teil des String-Objektes sind nicht den String selbst ändern, sondern einen geänderten String als Rückgabewert liefern → der String im Objekt bleibt unverändert.
Methode/Operator | Beschreibung |
---|---|
find | Gibt zurück wo ein Teilstring das erste mal in der Zeichenkette auftaucht a=Banane b=a.find("an") print b
Würde 1 zurück geben, da der Substring „an“ das erste mal an Index 1 (Zählung beginnt bei 0) auftaucht
|
replace | Gibt einen String zurück in dem alle Vorkommen (per Default) eines bestimmten Teilstrings und ersetzt wurden durch einen anderen. a="Ein Stein" b=a.replace("Stein","Blech") print b In oben stehendem Beispiel würde „Ein Blech“ zurückgegeben, da b den String in a enthält, nur das alle Teilstrings „Stein“ durch „Blech“ ersetzt wurden. |
lstrip/rstrip/strip | Gibt einen String zurück bei dem auf der linken Seite (lstrip)/am Anfang oder auf der rechten Seite (rstrip)/am Ende oder am Ende und Anfang (strip) die führenden/beendenden (jeweils vor oder nach dem letzten Buchstaben) Whitespaces, NewLines und alle anderen Steuerzeichen entfernt sind. a=" Hallo Tom " b=a.lstrip() print (b) b=a.rstrip() print (b) b=a.strip() In dem obigen Beispiel würde der Reihe nach ausgegeben:
|
startswith | Gibt true oder false zurück je nach dem ob ein String mit einem bestimmten Substring beginnt oder nicht.a="Banane" b=a.startswith("Ban") print b b wäre in diesem Beispiel True, da der String in a mit „Ban“ beginnt |
IN | Prüft ob ein Teilstring irgendwo im String zu finden ist. Der Operator ist von den sequentiellen Datentypen geerbt (String ist auch einer). a="Hallo Thomas" if "Thomas" in a: print "Hallo Thomas" Obiges Beispiel überprüft ob der Teilstring „Thomas“ in a ist (ist er) und wenn das so ist führt er den Körper der if-Anweisung aus. |
split | Gibt eine Liste mit Teilstrings zurück - der Originalstring wird anhand eines vorgegebenen Strings (Seperator) in einzelne Teile zerlegt. Der Separator (der Teilstring) ist nicht Teil des Ergebnisses (wird also gelöscht).
Syntax: y=x.split(Optional Seperator)
a="Hallo Thomas" b=a.split() b wäre in diesem Beispiel eine Liste mit den Elementen „Hallo“ und „Thoma“ - der Seperator (Leerzeichen) ist nicht im Ergebnis enthalten. a="Eins-Zwei-Drei" b=a.split("-") b wäre eine Liste mit den Elementen „Eins“, „Zwei“, „Drei“ - auch hier ist der Seperator (in diesem Fall „-“ nicht im Ergebnis enthalten. |
splitlines | Liefert eine Liste in der jedes Element eine Zeile aus dem String ist zurück - sucht in einer Zeichenkette nach Newline-Zeichen und spaltet die Zeichenkette an diesen auf, jedes Element enthält eine Zeile. Vor allem Sinnvoll wenn per read aus einer Datei der gesamte Inhalt in einen String geschrieben wurde (alle Zeilen stehen dann hintereinander) und nun einzelne Zeilen benötigt werden. a="Zeile 1 Text\nZeile 2 - Text\nZeile 3 - Text" b=a.splitlines() In diesem Fall wäre das Ergebnis eine liste mit den Elementen „Zeile 1 Text“, „Zeile 2 Text“, Zeile 3 Text„ - das Trennzeichen (das Newline) wird nicht mitgespeichert. |