Einführung
In diesem Lab lernen Sie, wie Sie in Python feststellen können, ob eine Zahl eine Ganzzahl (Integer) oder eine Gleitkommazahl (Float) ist. Das Lab beginnt damit, Ganzzahlen und Gleitkommazahlen voneinander zu unterscheiden, ihre wichtigsten Eigenschaften hervorzuheben und Beispiele zu geben.
Anschließend werden Sie zwei Methoden zur Überprüfung des Datentyps einer Zahl erkunden: die Verwendung der isinstance()-Funktion mit int und die Verwendung der type()-Funktion für Präzision. Durch praktische Übungen erstellen Sie ein Python-Skript, um Ganzzahl- und Gleitkommazahl-Datentypen zu identifizieren und voneinander zu unterscheiden, wodurch Sie Ihr Verständnis der Datentypüberprüfung in Python festigen.
Unterscheidung zwischen Ganzzahlen und Gleitkommazahlen
In diesem Schritt lernen Sie, wie Sie zwischen zwei grundlegenden Datentypen in Python unterscheiden können: Ganzzahlen (Integers) und Gleitkommazahlen (Floats). Das Verständnis des Unterschieds ist entscheidend für die Durchführung genauer Berechnungen und Datenmanipulationen.
Ganzzahlen (Integer)
Ganzzahlen sind ganze Zahlen, positiv oder negativ, ohne Dezimalstellen. Beispiele sind -3, 0, 5, 100.
Gleitkommazahlen (Float)
Gleitkommazahlen, oder Fließkommazahlen, sind Zahlen, die eine Dezimalstelle enthalten. Sie können auch Zahlen in wissenschaftlicher Notation darstellen. Beispiele sind -2.5, 0.0, 3.14, 1.0e5 (was 100000.0 entspricht).
Beginnen wir damit, ein Python-Skript zu erstellen, um diese Datentypen zu erkunden.
Öffnen Sie den VS Code-Editor in der LabEx-Umgebung.
Erstellen Sie eine neue Datei mit dem Namen
datatypes.pyim Verzeichnis~/project.touch ~/project/datatypes.pyÖffnen Sie die Datei
datatypes.pyim Editor und fügen Sie den folgenden Python-Code hinzu:## Assign an integer to the variable 'integer_number' integer_number = 10 ## Assign a float to the variable 'float_number' float_number = 10.0 ## Print the values and their types print("Integer:", integer_number, "Type:", type(integer_number)) print("Float:", float_number, "Type:", type(float_number))Speichern Sie die Datei
datatypes.py.Führen Sie das Skript mit dem Befehl
pythonim Terminal aus:python ~/project/datatypes.pySie sollten die folgende Ausgabe sehen:
Integer: 10 Type: <class 'int'> Float: 10.0 Type: <class 'float'>Diese Ausgabe zeigt deutlich, dass
integer_numbervom Typintundfloat_numbervom Typfloatist.Lassen Sie uns nun eine einfache arithmetische Operation durchführen, um zu sehen, wie Python diese Typen behandelt:
Modifizieren Sie die Datei
datatypes.py, um Folgendes einzuschließen:## Assign an integer to the variable 'integer_number' integer_number = 10 ## Assign a float to the variable 'float_number' float_number = 10.0 ## Print the values and their types print("Integer:", integer_number, "Type:", type(integer_number)) print("Float:", float_number, "Type:", type(float_number)) ## Add an integer and a float sum_result = integer_number + float_number ## Print the result and its type print("Sum:", sum_result, "Type:", type(sum_result))Speichern Sie die Datei
datatypes.py.Führen Sie das Skript erneut aus:
python ~/project/datatypes.pySie sollten die folgende Ausgabe sehen:
Integer: 10 Type: <class 'int'> Float: 10.0 Type: <class 'float'> Sum: 20.0 Type: <class 'float'>Beachten Sie, dass wenn Sie eine Ganzzahl und eine Gleitkommazahl addieren, das Ergebnis eine Gleitkommazahl ist. Dies liegt daran, dass Python die Ganzzahl automatisch in eine Gleitkommazahl umwandelt, um die Genauigkeit aufrechtzuerhalten.
Verwendung von isinstance() mit int
In diesem Schritt lernen Sie, wie Sie die isinstance()-Funktion verwenden, um zu prüfen, ob eine Variable eine Ganzzahl (Integer) ist. Diese Funktion ist ein leistungsstarkes Werkzeug zur Überprüfung von Datentypen in Python.
Die isinstance()-Funktion nimmt zwei Argumente:
- Die Variable, die Sie prüfen möchten.
- Der Datentyp, gegen den Sie prüfen möchten (z.B.
int,float,str).
Sie gibt True zurück, wenn die Variable den angegebenen Typ hat, und False sonst.
Lassen Sie uns die Datei datatypes.py aus dem vorherigen Schritt so ändern, dass die isinstance()-Funktion enthalten ist.
Öffnen Sie die Datei
datatypes.pyim VS Code-Editor.Fügen Sie der Datei folgenden Code hinzu:
## Assign an integer to the variable 'integer_number' integer_number = 10 ## Assign a float to the variable 'float_number' float_number = 10.0 ## Print the values and their types print("Integer:", integer_number, "Type:", type(integer_number)) print("Float:", float_number, "Type:", type(float_number)) ## Add an integer and a float sum_result = integer_number + float_number ## Print the result and its type print("Sum:", sum_result, "Type:", type(sum_result)) ## Check if integer_number is an integer is_integer = isinstance(integer_number, int) print("Is integer_number an integer?", is_integer) ## Check if float_number is an integer is_integer = isinstance(float_number, int) print("Is float_number an integer?", is_integer)Speichern Sie die Datei
datatypes.py.Führen Sie das Skript mit dem Befehl
pythonim Terminal aus:python ~/project/datatypes.pySie sollten die folgende Ausgabe sehen:
Integer: 10 Type: <class 'int'> Float: 10.0 Type: <class 'float'> Sum: 20.0 Type: <class 'float'> Is integer_number an integer? True Is float_number an integer? FalseWie Sie sehen können, gibt
isinstance(integer_number, int)Truezurück, weilinteger_numbertatsächlich eine Ganzzahl ist.isinstance(float_number, int)gibtFalsezurück, weilfloat_numbereine Gleitkommazahl und keine Ganzzahl ist.
Diese Funktion ist besonders nützlich, wenn Sie unterschiedliche Aktionen basierend auf dem Datentyp einer Variable ausführen müssen. Beispielsweise möchten Sie möglicherweise Ganzzahldivision durchführen, wenn eine Variable eine Ganzzahl ist, und Gleitkommadivision, wenn es sich um eine Gleitkommazahl handelt.
Prüfung auf Genauigkeit mit type()
In diesem Schritt werden Sie untersuchen, wie die type()-Funktion verwendet werden kann, um die Genauigkeit von Zahlen in Python zu verstehen. Während isinstance() prüft, ob eine Variable zu einem bestimmten Typ gehört, gibt type() den tatsächlichen Typ der Variable zurück. Dies ist nützlich, um zu verstehen, wie Python verschiedene numerische Operationen und deren resultierende Genauigkeit behandelt.
Lassen Sie uns die Datei datatypes.py weiter modifizieren, um dies zu demonstrieren.
Öffnen Sie die Datei
datatypes.pyim VS Code-Editor.Fügen Sie der Datei folgenden Code hinzu:
## Assign an integer to the variable 'integer_number' integer_number = 10 ## Assign a float to the variable 'float_number' float_number = 10.0 ## Print the values and their types print("Integer:", integer_number, "Type:", type(integer_number)) print("Float:", float_number, "Type:", type(float_number)) ## Add an integer and a float sum_result = integer_number + float_number ## Print the result and its type print("Sum:", sum_result, "Type:", type(sum_result)) ## Check if integer_number is an integer is_integer = isinstance(integer_number, int) print("Is integer_number an integer?", is_integer) ## Check if float_number is an integer is_integer = isinstance(float_number, int) print("Is float_number an integer?", is_integer) ## Perform division with integers division_result = integer_number / 3 print("Division result:", division_result, "Type:", type(division_result)) ## Perform integer division with integers integer_division_result = integer_number // 3 print("Integer division result:", integer_division_result, "Type:", type(integer_division_result))Speichern Sie die Datei
datatypes.py.Führen Sie das Skript mit dem Befehl
pythonim Terminal aus:python ~/project/datatypes.pySie sollten die folgende Ausgabe sehen:
Integer: 10 Type: <class 'int'> Float: 10.0 Type: <class 'float'> Sum: 20.0 Type: <class 'float'> Is integer_number an integer? True Is float_number an integer? False Division result: 3.3333333333333335 Type: <class 'float'> Integer division result: 3 Type: <class 'int'>Beobachten Sie Folgendes:
- Wenn Sie zwei Ganzzahlen mit dem
/-Operator teilen, ist das Ergebnis eine Gleitkommazahl, auch wenn das Ergebnis eine ganze Zahl ist. Dies liegt daran, dass Python das möglichst genauste Ergebnis liefern möchte. - Wenn Sie den
//-Operator (Ganzzahldivision) verwenden, ist das Ergebnis eine Ganzzahl, wobei jeglicher Bruchteil verworfen wird.
- Wenn Sie zwei Ganzzahlen mit dem
Das Verständnis dieser Feinheiten ist entscheidend für das Schreiben von genauen und effizienten Python-Codes, insbesondere bei der Arbeit mit numerischen Berechnungen.
Zusammenfassung
In diesem Lab haben Sie gelernt, den Unterschied zwischen Ganzzahlen (Integers) und Gleitkommazahlen (Floats) in Python zu unterscheiden. Ganzzahlen sind Zahlen ohne Dezimalpunkt, während Gleitkommazahlen Zahlen mit einem Dezimalpunkt sind. Sie haben ein Python-Skript erstellt, um Ganzzahl- und Gleitkommawerte Variablen zuzuweisen und dann deren Werte zusammen mit ihren jeweiligen Typen mithilfe der type()-Funktion ausgegeben. Die Ausgabe hat gezeigt, dass Variablen, denen ganze Zahlen zugewiesen wurden, vom Typ int sind, und solche mit Dezimalpunkten vom Typ float sind.



