5. Lektion: Variablen Vielfalt: Unterschied zwischen den Versionen

Aus Attraktor Wiki

Wechseln zu: Navigation, Suche
(Verkleinern)
(Suchen)
Zeile 145: Zeile 145:
  
 
=== Suchen===
 
=== Suchen===
 
+
* kommt im 2. Teil
  
 
=== Löschen===
 
=== Löschen===

Version vom 25. Juli 2023, 21:42 Uhr

Datenstrukturen

Wir haben bisher einfache Variablen kennen gelernt, die nur einen Wert aufnehmen können. Es gibt in Python aber eine ganze Reihe von Variablen die mehrere Werte enthalten können. Dafür gibt es den Begriff Datenstruktur.

Funktionen die auf die folgenden Datenstrukturen angewendet werden können

len(x)

  • gibt die Länge der Liste x zurück.

max(x)

  • gibt den größten Wert aus der Liste x zurück.

min(x)

  • gibt den kleinsten Wert aus der Liste x zurück.

del(x)

  • löschen eines Elementes
    • del(liste[1])
  • löschen der ganzen Datenstruktur
    • del(liste)

Listen

Erzeugen

  • liste = [1, 2, 3]
    • Die Werte von Listen werden in eckige Klammern geschrieben.
    • Werte dürfen mehrfach vorkommen.
    • Es können unterschiedliche Datentypen in einer Liste enthalten sein.
    • Listen dürfen Listen enthalten

Übung

  • Erzeugt 10 Listen mit einheitlichen und gemischten Datentypen.

Lesen

  • Die Werte in einer Liste sind indiziert.
  • Der Index beginnt mit 0 !!!
  • Über den Index kann auf den Wert zugegriffen werden
    • liste[1] => 2

Übung

  • Greift über den Index auf einzelne Elemente Eurer Listen zu.

Verändern

  • Über den Index können einzelne Werte verändert werden.
    • liste[1] = 5 => [1, 5, 3]

Übung

  • Verändert einzelne Werte in euren Listen und überprüft die Änderung
  • Ändert den Datentyp einzelner Elemente

Erweitern

.insert(i, x)

  • fügt an Index i den Wert x ein.

.append(x)

  • fügt ein neues Element zur Liste hinzu
    • liste.append([10, 20]) => [1, 2, 3, [10, 20]]

.extend(x)

  • fügt ggf. mehrere Elemente hinzu.
    • liste.extend([10, 20]) => [1, 2, 3, 10, 20]

Übung

  • Erweitert eure Listen mit allen Methoden und überprüft die Änderungen

Verkleinern

.pop([i])

  • Entfernt das Element mit Index i aus der Liste und gibt es zurück.
    • ohne i wird das letzte Element ausgewählt.

.remove(x)

  • Entfernt das erste Element mit dem Wert x.

Übung

  • Holt mit pop ein Element aus einer Liste und zeigt es mit print() an.
  • Entfernt alle Elemente mit dem selben Wert aus einer Liste.

Sortieren

.reverse()

  • kehrt den Inhalt der Liste um.

.sort(k, r)

  • sortiert eine Liste
    • Ohne Parameter wird alphabetisch sortiert.
    • k(ey) gibt den Sortierschlüssel an. Z.B. Länge bei Strings.
    • r(everse) gibt eine umgekehrte Sortierung zurück.
  • Es können nur gleiche Datentypen sortiert werden.

Übung

  • Sortierte ein paar Deiner Listen.
  • Prüfe ob wirklich nur gleiche Datentypen sortiert werden können.

Suchen

.index(x)

  • index gibt den Index des ersten auftretens von x in der Liste zurück.

.count(x)

  • gibt zurück wie oft x in der Liste vorkommt.

Übung

  • suche nach Einträgen in deinen Listen.

Löschen

.clear()

  • alle Elemente einer Liste entfernen.

Übung

  • leere eine Deiner Liste mit .clear() und kontrolliere den Inhalt.

Dictionaries / Wörterbücher

Erzeugen

dictionary = {key1: value1, key2: value2}

  • Dictionaries enthalten eine Liste von key:value Paaren.
    • key = Schlüssel
    • value = Wert
    • item = Schlüssel:Wert-Paar
  • Die items sind nicht sortiert und können ihre Reihenfolge verändern.
  • Keys dürfen nur einmal vorkommen.
  • Keys dienen als Index.
  • Values dürfen Dictionaries und andere Datenstrukturen enthalten.

Übung

  • Erstelle ein Wörterbuch, das die Zahlen 0 bis 9 als Schlüssel und die Wörter als Wert enthält.
  • Erstelle ein Dictionary das 'Aussen', 'Wohnzimmer' und 'Schlafzimmer' als key enthält und die values dazu enbenfalls ein Dictionary mit den keys 'Temperatur', 'Luftdruck' und 'Luftfeuchte' ist. Die values dazu könnt Ihr selbst bestimmen.

Lesen

  • x = dictionary[key] - gibt den Wert des Schlüssels zurück
  • x = d.items() - erstellt eine Liste mit den key:value-Paaren
  • x = d.keys() - erstellt eine Liste mit den keys
  • x = d.values() - erstellt eine Liste mit den values

Verändern

  • d[key] = neuer_Wert

Erweitern

  • d[neuer_key] = value

Verkleinern

  • d.pop(key) - gibt das item mit dem key zurück und entfernt es.

Sortieren

  • Dictionaries sind grundsätzlich unsortiert!

Suchen

  • kommt im 2. Teil

Löschen

  • del d[k] löscht das ganze item
  • d.clear() löscht alle items.

Strings

  • Strings kann man als Sonderform von Listen betrachten, die nur Zeichen enthalten.
  • Deshalb kann man sie auch so behandeln wie Listen.
  • Strings sind aber immutable also unveränderlich
    • wenn ein String verändert wird muss jedesmal ein neuer String angeleg werden.

Übung

  • Testet aus welche Methoden von Listen bei Strings funktionieren.