Benutzer-Werkzeuge

Webseiten-Werkzeuge


python_3

Dies ist eine alte Version des Dokuments!


Unterschiede Python 2 und Python 3

In Python 2 war print ein Statement:

print "Text"

In Python 3 ist Print eine Methode:

print ("Text")

raw_input ist jetzt input

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“)

Strings sind UTF-8

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.

Automatisches konvertieren nach Float

  • Wenn bei Rechenoperationen das Ergebnis eine Gleitkommazahl ist wird das Ergebnis automatisch ein float
  • Bei Python 2 wurde das Ergebnis by Default als Integer gespeichert → die Nachkommastellen fiehlen ggf. einfach weg

Variablen

Variablennamen

  • Müssen mit einem Unterstrich oder einem Buchstaben beginnen
  • dürfen Zahlen, Unterstriche, Buchstaben enthalten
  • Sind Case-Sensitiv (d.h. Groß- und Kleinschreibung wird berücksichtigt)

Konvertieren von Typen

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.

Operatoren

Die folgende Liste ist nicht abschließend, sie zeigt nur die Operatoren die nicht selbsterklärend sind:

OperatorBeschreibung
** Hoch/Power of x
a=5**2

Enstpricht 5 hoch 2.

%Modulu/Rest - gibt den Rest einer Division zurück


Rest ist die Menge Ganzzahlen die übrigbleibt wenn man eine Division nur bis zu einem ganzzahligen Ergebnis berechnet.
Beispiel:
17/3=5 Rest 2
Die 3 passt 5 mal in die 17 (Ergebnis 15) - es bleiben 2 Ganzzahlen übrig bis zur eigentlichen Zahl (17).
Syntax:

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.

Reihenfolge der Abarbeitung von Operationen (Mathematische Operation)

Mathematische Ausdrücke werden nach den folgenden Regeln verarbeitet.

  • Ausdrücke in Klammern
  • Exponential-Funktionen (Hoch)
  • Multiplikationen und Divisionen (Mal, Geteilt)
  • Additionen und Subtraktionen (Minus und Plus)
  • von Links nach Rechts

String-Methoden/Operationen

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
findGibt 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
Ist der String nicht vorhanden wird -1 zurück gegeben.

replaceGibt 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/stripGibt 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:

  • „Hallo Tom “ → lstrip nimmt die Whitespaces am Beginn des Strings weg
  • „ Hallo Tom“ → rstrip nimmt die Whitespaces am Ende des Strings weg
  • „Hallo Tom“ → strip nimmt die Whitespaces am Anfang und am Ende weg
startswithGibt 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

python_3.1524646292.txt.gz · Zuletzt geändert: 2018/04/25 10:51 von root