Der Begriff Datentyp beschreibt den Wertebereich von Daten,
in dem ganz bestimmte Operationen gelten, die man auf alle Daten dieses Typs anwenden kann.
Beispiel: Auf Variablen vom Typ int kann man Operationen wie Addition, Subtraktion, ... ausführen.
Die Grundlegenden Datentypen finden sich zum Großteil auch in anderen Programmiersprachen (Java, C++, C#, Javaskript, ...).
Bezeichnung
Keyword
Wertebereich
Beispiel 1
Beispiel 2
Boolean
bool
Wahrheitswerte
True → 1
False → 0
Integer
int
Ganze Zahlen
-3
3
Float
float
Dezimalzahlen
-9,3
2,34
String
str
Text / Zeichen
"hallo"
'hello'
Übung: Datentypzuordnung
Übung: Variable, Wert, Datentyp
Sequentielle Datentypen
Bezeichnung
Keyword
Erläuterung
Beispiel 1
Beispiel 2
String
str
Sequenz von einzelnen Zeichen
Elemente sind geordnet
Duplikate sind erlaubt
Elemente können nicht ersetzt werden
Auf einzelne Zeichen kann mit einer eckigen Klammer und der entsprechenden Index-Nummer zugegriffen werden
x = "Apfel"
x = 'Apfel'
Liste
list
Liste von Elementen eines beliebigen Typs
Elemente sind geordnet
Duplikate sind erlaubt
Elemente können ersetzt werden
Auf einzelne Elemente kann mit einer eckigen Klammer und der entsprechenden Index-Nummer zugegriffen werden
x = ["Apfel", "Banane", "Kirsche"]
x = [2, "Banane", 3.4]
Tuple
tuple
Liste von Elementen eines beliebigen Typs
Elemente sind geordnet
Duplikate sind erlaubt
Elemente können nicht ersetzt werden
(nützlich bei Koordinaten)
Auf einzelne Elemente kann mit einer runden Klammer und der entsprechenden Index-Nummer zugegriffen werden
x = ("Apfel", "Banane", "Kirsche")
x = (2, "Banane", 3.4)
Anmerkungen:
Beim Abzählen von Elementen eines sequentiellen Datentyps muss bei 0 begonnen werden
Ob sich der Inhalt einer Variable in einer Liste oder einem Tupel befindet, kann man mit folgendem Code ermitteln:
variable in listenname Tipp: Der Rückgabewert ist Bolean.
Tupel / Listen können ineinander verschachtelt sein liste = [
'Freitag', [13, 'Januar', 2012]] tupel = (
'Freitag', (13, 'Januar', 2012))
Auf einzelne (unverschachtelte) Elemente kann man über den Index zugreifen
z.B. liste[0] = 'Freitag'
Funktionen zum arbeiten mit sequentiellen Datentypen finden sich in der Funktionen-Tabelle.
string[i:j] ruft Zeichen innerhalb des Bereiches i bis j ab.
Operationen auf Listen:
list=[] difiniert eine leere Liste
list[i]=x speichert x an der Stelle i in der Liste
list=[i] ruft Eintrag mit Index i auf
Aufgabe 1: Übungen zu Strings und Listen
Nutze dein neu erworbenes Wissen über Strings und Listen, um die folgenden Programme zu vervollständigen.
Elemente an Stelle x
Elemente hinzufügen
Tipp 1
Tipp 2
Aufgabe 2: Datentypen von Listenelementen
Teste den Folgenden Code aus.
Ergänze die Liste im Programm mit drei ganzen Zahlen und einer Dezimalzahl.
Lass den Datentyp der neuen Elemente ausgeben.
Welchen Datentyp haben die Elemente einer Liste?
Die Elemente einer Liste behalten ihren Datentyp bei.
Lediglich die Liste selbst hat den Datentyp Liste.
Aufgabe 3: Funktionen und Methoden bei sequenziellen Datentypen
Welche Funktion / Methode kann man bei welchem Datentyp nutzen?
Aufgabe 4: Listen und Schleifen
Erweitere das Programm so, dass alle Listenelemente und die zugehörigen Datentypen untereinander ausgegeben werden.
Nutze dafür passende Funktionen von Funktionen