Python lernen

Den Datentyp bestimmen und umwandeln

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Python kümmert sich im Hintergrund um die Verwaltung von Datentypen. Aber es kann in gewissen Situationen wichtig oder notwendig sein, dass Sie den Datentyp genau kennen und auch gezielt umwandeln. Hier schauen wir uns das Konzept genauer an.
05:38

Transkript

Python kümmert sich weitgehend automatisch um die Verwaltung von Datentypen. Das heißt, wenn Sie eine Variable anlegen und weisen die einen Wert zu, dann hat hier diese Variante den entsprechenden Wert und Typ. Es kann nicht sein, dass Sie diesen Datentyp auch wissen müssen, in gewissen Situationen. Und es gibt eine Built-in-Funktion, mit der Sie diesen Datentyp bestimmen können. Diese heißt "type" und für diesen Fall hier, bekommen wir dann halt ein "int". Beachten Sie, dass diese Notation "class" relevant ist. Im Hintergrund ist Python objektorientiert und arbeitet mit sogenannten Referenztypen, auch wenn es im Vordergrund nicht so scheint. Man geht eigentlich hier von aus, dass das ein sogenannter primitiver Datentyp ist und vom Schreiben des Python-Codes geht man auch quasi mit primitiven Datentypen heran, aber das System im Hintergrund macht daraus einen sogenannte Referenztypen. Das ist aber nur eine Randinformation, die Sie am Anfang nicht weiter interessieren muss. Nun ist die Bestimmung des Datentyps über "type", ein Schritt um rauszubekommen, dass ein ganz bestimmter Datentyp vorliegt oder welcher Datentyp vorliegt, aber was wäre beispielsweise für den Fall, dass Sie hier Text haben und hier eine Zahl. Es ist relativ offensichtlich, dass Operation wie Müller geteilt durch Meyer unsinnig sind, aber was wäre, wenn wir jetzt diese beiden Variablen "var1" und "var2" addieren? Man könnte sich doch vorstellen, dass das System erkennt, das hier ist eine Zahl alles gut und das hier ist ein Text, also ein String, aber da steht eine Zahl drin. Ich könnte doch diese Zahl extrahieren und dann beiden Variablen arithmetisch behandeln, das heißt addieren und den Wert 10 zurückgeben. Viele lose typisierte Sprachen, beispielsweise JavaScript oder PHP, machen genauso etwas, Python nicht. Sie sehen, dass es hier eine Fehlermeldung gibt. Diese Operation ist für den Datentyp "int" und "str", was der String-Datentyp ist, nicht unterstützt. Was man also machen muss, wenn man so eine Situation hat, ist ein Casting, eine explizite Typumwandlung und dafür gibt es einige Funktionen, Built-in-Funktionen, die Python zur Verfügung stellt, beispielsweise die Funktion "int". Was passiert allerdings, wenn hier Zeichen drinstehen, die nicht gewandelt werden können? Dann haben wir wieder eine Fehler Situation. Das heißt, diese Casting-Funktionen, diese Typumwandlungs-Funktionen, funktionieren nur dann, wenn eine Information von der Art richtig ist, aber in einem aktuell nicht passenden Datentyp vorliegt. Also in diesem Fall ziemlich eindeutig, wir haben eine Zahl, aber sie ist gerade als ein String, vom Datentyp "str" in Python vorhanden, aber die kann ich dann bei Bedarf selbst wandeln. Nun kann man allerdings, was ich hier gemacht habe, das heißt aus diesem String, diesen Text mit der Zahl 3 drin, eine Zahl zu extrahieren. Ich kann das allerdings auch anders angehen, ich kann nämlich die Zahl, die in der Variable "var1" steckt in einem String, also in den Datentyp "str" umwandeln, dazu gibt es die Funktion "str" und das Ergebnis hier ist 73. D as ist aber nicht als Zahl zu verstehen, sondern dass ist dann die sogenannte String-Verkettung. Python wandelt, wie gesagt bei der Verwendung von diesem +Operator nicht automatisch, was viele andere Sprachen machen, lässt aber die Flexibilität zu die Datentypen passend umzuwandeln und dann entweder eine arithmetische Operation oder eine String-Verkettung mit dem +Operator durchzuführen. Es gibt auch noch die Funktion "float", um einen Parameter in einer Gleitkommazahl umzuwandeln. Das heißt, ich könnte zum Beispiel. die Variable 1-mal in einen „float" umwandeln. "print(type)" achte Sie, wie ich das ineinander schachtle, das geht jederzeit, "float" war 1 und ich habe drei Klammern auf, also muss ich eins, zwei, drei Klammern wieder schließen. Und das hier ist das Ergebnis. Sie sehen, ich habe einen "float"-Datentyp damit erzeugt und über "type" gebe ich den Typ aus. Was sollten sich also merken? Über die Built-in-Funktion "type" können Sie den Datentyp einer Variable, zur Not auch eines Literals, bestimmen. Über "int", "str" und "float" wandeln Sie passende Inhalte in die richtigen Datentypen. Und dieses Verfahren nennt man Casting, explizites Casting oder Typumwandlung.

Python lernen

Lernen Sie Syntax, Konzepte und Sprachelemente der praktischen Programmiersprache Schritt für Schritt kennen.

3 Std. 41 min (64 Videos)
Derzeit sind keine Feedbacks vorhanden...
Software:
Exklusiv für Abo-Kunden
Erscheinungsdatum:08.06.2018

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!