At My Fingertips
Rapid Playground
Hier lernen Sie verschiedene Datentypen in der Programmiersprache Python und in der Grafikbibliothek PyTamaro kennen und verwenden. Datentypen sind in den meisten Programiersprachen wichtig, beispielsweise weil Compiler scheinbar identische Daten anders verwendet, wenn sie einen anderen Datentyp haben.
# 1
print(1 + 2)
print("1" + "2")
# 2
print(3 * 2)
print(3 * "2")
# 3
from pytamaro import show_graphic, rectangle, green
print(rectangle(200, 20, green))
show_graphic(rectangle(200, 20, green))
# 4
# folgender Code gibt "hallo" dreimal aus
for n in range(3):
print("hallo")
# was gibt dieser Code aus?
for n in range(3.3):
print("hallo")
Für Zahlen gibt es in Python zwei Datentypen: die mit Nachkommastellen und die ohne.
Floating-point number oder float
ist eine Gleitkommazahl und hat als solche immer ein Komma, respektive das englische Äquivalent, den Punkt:
15.67
0.
0.0
.2
-132401256.1987
0.00001351
1083561805608315.132515
Integer oder int
ist eine Ganzzahl und hat als solche weder Kommas noch Nachkommastellen:
0
18
-100975
2
12095139183276
Als String oder str
wird alles in Anführungszeichen/ Gänsefüsschen "..."
bezeichnet. Sie können dabei einfache '...' oder doppelte "..." Gänsefüsschen verwenden.
"Hallo Welt!"
"Sie sagte: 'Hallo Welt!'"
'w31c0m3, \t bitte hier klicken: [ ]'
"-100975.8"
"rectangle(200, 200, green)"
type
Sie können mit der Funktion type
den Datentyp erfragen:
print(type(7))
print(type(7.1))
print(type("7"))
7 + 2
7.0 + 2.1
7 + 2.1
7 / 2
7 // 2
"7 + 2"
3 * "3"
"hallo" + " welt"
3 - "3"
3 / "3"
Mit Datentypen können Sie also rechnen und je nach Datentyp und Operation kann sich das Resultat und der Datentyp verändern. Achten Sie auch darauf, die Operatoren - und / nicht auf Strings anwendbar sind.
Wir können Datentypen auch in andere verwandeln, nämlich mit Konversionsfunktionen: str, int, float
.
Beispielsweise können wir keine Zahlen und Strings durch den Operator +
verknüpfen:
print(1 + "2")
Denn der Python-Compiler weiss nicht, ober eine Addition (1+2
-> 3
) oder eine Stringkonkatenation ("1"+"2"
-> "12"
) ausführen soll. "1" + 2
löst also einen Fehler aus. Wir können dieses Problem mit den Konversionsfunktionen lösen, so wird nämlich ein Datentyp in einen anderen Datentyp umgewandelt:
"alpha" - str(2)
-> "alpha2"
"alpha" * "3"
-> "alphaalphaalpha"
2 / 2
-> 1
12 + 14
-> 1214
"23" + 2
-> 25
"23.0" + 2
-> 25.0
1 - 2 + "2"
-> -12
print("alpha" * int("3"))
# 3. `2 / 2` -> `1`
print(int(2 / 2))
# 4. `12 + 14` -> `1214`
print(str(12) + str(14))
# 5. `"23" + 2` -> `25`
print(int("23") + 2)
# 6. `"23.0" + 2` -> `25.0`
print(float("23.0") + 2)
# 7. `1 - 2 + "2"` -> `-12`
print(str(1 - 2) + "2")
Der vierte built-in Datentyp von Python ist boolean, der genau zwei Werte hat: True
und False
.
Zum Beispiel kann man überprüfen, ob ein Ausdruck wie 222 - 123
die 89 oder 99 ergibt:
Booleans werden oft in Verzweigungen verwendet:
if 2 + 15 == 18:
print("Du hast recht.")
else:
print("Ich habe recht.")
Sie werden später mehr zu Verzweigungen und Booleans lernen.
In Python gibt es auch Funktionen und Ausdrücke, die keinen Datentyp zurückgeben, weil sie z.B. nichts weitergeben, sondern etwas and die Konsole ausgeben. Zu diesen Funktionen gehören print
und show_graphic
.
Wenn Sie also die Funktion print
in print aufrufen
, erhalten Sie nichts zurück, oder None
:
Der Datentyp von print
ist dann NoneType
:
from pytamaro import show_graphic, green, rectangle
print(show_graphic(rectangle(1,1,green)))
print(type(show_graphic(rectangle(1,1,green))))
Damit man mit der Bibliothek PyTamaro auch mit Farben Grafiken erstellen kann, verfügt die Bibliothek über eigene Datentypen. Davon haben Sie bereits Graphic
und Color
, respektive ihre Unterarten, verwendet. Diese Datentypen sind etwas komplexer aufgebaut.
Die Ausgabe sagt uns also nicht nur einen einfachen Datentyp (class) graphic
an, sondern auch dass die Funktion text
aus der Bibliothek pytamaro
stammt und sie darin dem Modul graphic
untergeordnet ist.
from pytamaro import rectangle, beside, green
print(type(green))
print(type(rectangle(2,2,green)))
print(
type(
beside(
rectangle(2,2,green),
rectangle(2,2,green)
)
)
)
Beispiel
14 + "2" -> 142
# Lösung
print(str(14) + "2")
Aufgaben
15 + 14 + "14" -> 2914
8.0 * "5" -> 55555555
25 / 5 * "hi" -> hihihihihi
"Hello" + " World" -> Hello World!
15 + 14 + "14"
-> 2914str(15 + 14) + "14"
8.0 * "5"
-> 408 * "5"
25 / 5 * "hi"
-> hihihihihi25 // 5 * "hi"
"Hello" + " World"
-> Hello World!"Hello" + " World" + "!"
int(100 * "10")
str, int, float
und können diese mit verschiedenen Operatoren verwenden.str, int, float
verwenden.True
und False
.type
den Datentyp herausfinden.Nonetype
verwenden.This activity has been created by Gall and is licensed under CC BY-SA 4.0.
Datentypen
PyTamaro is a project created by the Lugano Computing Education Research Lab at the Software Institute of USI
Privacy Policy • Platform Version 3094ca3 (Tue, 03 Dec 2024 14:08:36 GMT)